📄 classdlg.cpp
字号:
// ClassDlg.cpp : implementation file
//
#include "stdafx.h"
#include "学生成绩管理系统.h"
#include "ClassDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CClassDlg dialog
CClassDlg::CClassDlg(CWnd* pParent /*=NULL*/)
: CDialog(CClassDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CClassDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CClassDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CClassDlg)
DDX_Control(pDX, IDC_LISTCLASS, m_listclass);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CClassDlg, CDialog)
//{{AFX_MSG_MAP(CClassDlg)
ON_BN_CLICKED(IDC_BUTTONDELETE, OnButtondelete)
ON_BN_CLICKED(IDC_BUTTONADD, OnButtonadd)
ON_BN_CLICKED(IDC_BUTTONEDIT, OnButtonedit)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CClassDlg message handlers
BOOL CClassDlg::OnInitDialog()
{
CDialog::OnInitDialog();
LONG lStyle = m_listclass.SendMessage(LVM_GETEXTENDEDLISTVIEWSTYLE);
lStyle |= LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP;
m_listclass.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE, 0,(LPARAM)lStyle);
int left=0;
CString feild[4]={"班级号","班级名","专业名","系名"};
for(int i=0;i<4;i++)
{
m_listclass.InsertColumn(i+1,feild[i],left,100,i);
left=200*(i+1);
}
//
int j=0;
m_classset.Open();
m_classset.MoveFirst();
do
{
m_listclass.InsertItem(j,m_classset.m_column1,0);
m_listclass.SetItemText(j,1,m_classset.m_column2);
m_listclass.SetItemText(j,2,m_classset.m_column3);
m_listclass.SetItemText(j,3,m_classset.m_column4);
j++;
m_classset.MoveNext();
}while(!m_classset.IsEOF());
m_classset.Close();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CClassDlg::OnButtondelete()
{
TCHAR currentclassno[20];
CString currentclass;
if(m_listclass.GetSelectionMark()>=0)
{
m_listclass.GetItemText(m_listclass.GetSelectionMark(),0,currentclassno,20);
currentclass=currentclassno;
if(!m_classset.IsOpen())
m_classset.Open();
if(!m_classset.IsBOF())
m_classset.MoveFirst();
do
{
if(m_classset.m_column1==currentclass)
{
m_classset.Delete();
break;
}
if(!m_classset.IsEOF())
m_classset.MoveNext();
}while(!m_classset.IsEOF());
if(m_classset.IsOpen())
m_classset.Close();
////删除相关学生
if(!m_studentset.IsOpen())
m_studentset.Open();
if(!m_studentset.IsBOF())
m_studentset.MoveFirst();
do
{
if(m_studentset.m_column3==currentclass)
{
//删除相关成绩
if(!m_gradeset.IsOpen())
m_gradeset.Open();
if(!m_gradeset.IsBOF())
m_gradeset.MoveFirst();
do
{
if(m_gradeset.m_column1==m_studentset.m_column1)
m_gradeset.Delete();
if(!m_gradeset.IsEOF())
m_gradeset.MoveNext();
}while(!m_gradeset.IsEOF());
if(m_gradeset.IsOpen())
m_gradeset.Close();
//删除
m_studentset.Delete();
}
if(!m_studentset.IsEOF())
m_studentset.MoveNext();
}while(!m_studentset.IsEOF());
if(m_studentset.IsOpen())
m_studentset.Close();
//
m_listclass.DeleteItem(m_listclass.GetSelectionMark());
}
else
MessageBox("请选择一条记录");
}
void CClassDlg::OnButtonadd()
{
// TODO: Add your control notification handler code here
if(classadddlg.DoModal()==IDOK)
{
m_listclass.DeleteAllItems();
int j=0;
if(!m_classset.IsOpen())
m_classset.Open();
if(!m_classset.IsBOF())
m_classset.MoveFirst();
do
{
m_listclass.InsertItem(j,m_classset.m_column1,0);
m_listclass.SetItemText(j,1,m_classset.m_column2);
m_listclass.SetItemText(j,2,m_classset.m_column3);
m_listclass.SetItemText(j,3,m_classset.m_column4);
j++;
m_classset.MoveNext();
}while(!m_classset.IsEOF());
if(m_classset.IsOpen())
m_classset.Close();
}
}
void CClassDlg::OnButtonedit()
{
// 获取当前信息
TCHAR currentclassno[20],currentclassname[20],currentzhuanyie[30],currentximing[20];
if(m_listclass.GetSelectionMark()>=0)
{
m_listclass.GetItemText(m_listclass.GetSelectionMark(),0,currentclassno,20);
m_listclass.GetItemText(m_listclass.GetSelectionMark(),1,currentclassname,20);
m_listclass.GetItemText(m_listclass.GetSelectionMark(),2,currentzhuanyie,30);
m_listclass.GetItemText(m_listclass.GetSelectionMark(),3,currentximing,20);
classeditdlg.m_strclassno=currentclassno;
classeditdlg.m_classname=currentclassname;
classeditdlg.m_classximing=currentximing;
classeditdlg.m_zhuanyie=currentzhuanyie;
if(classeditdlg.DoModal()==IDOK)
{
m_listclass.DeleteAllItems();
int j=0;
if(!m_classset.IsOpen())
m_classset.Open();
if(!m_classset.IsBOF())
m_classset.MoveFirst();
do
{
m_listclass.InsertItem(j,m_classset.m_column1,0);
m_listclass.SetItemText(j,1,m_classset.m_column2);
m_listclass.SetItemText(j,2,m_classset.m_column3);
m_listclass.SetItemText(j,3,m_classset.m_column4);
j++;
m_classset.MoveNext();
}while(!m_classset.IsEOF());
if(m_classset.IsOpen())
m_classset.Close();
}
}
else
MessageBox("请选择一条记录");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -