📄 grade.cpp
字号:
// Grade.cpp : implementation file
//
#include "stdafx.h"
#include "Student.h"
#include "Grade.h"
#include "GradeSet.h"
#include "BaseSet.h"
#include "GuestSet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CGrade dialog
CGrade::CGrade(CWnd* pParent /*=NULL*/)
: CDialog(CGrade::IDD, pParent)
{
//{{AFX_DATA_INIT(CGrade)
m_adress = _T("安徽滁州市");
m_born = _T("1986.02.28");
m_id = _T("040330519");
m_name = _T("陆良虎");
m_sex = _T("男");
m_tel = _T("0550-3940717");
m_syspassword = _T("");
m_sysuser = _T("");
//}}AFX_DATA_INIT
}
BOOL CGrade::OnInitDialog()
{
CDialog::OnInitDialog();
m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
m_list.InsertColumn(1,"学号",LVCFMT_CENTER,100,1);
m_list.InsertColumn(2,"C++",LVCFMT_CENTER,50,1);
m_list.InsertColumn(3,"数据结构",LVCFMT_CENTER,70,1);
m_list.InsertColumn(4,"操作系统",LVCFMT_CENTER,70,1);
m_list.InsertColumn(5,"软件工程",LVCFMT_CENTER,70,1);
m_list.InsertColumn(6,"编译原理",LVCFMT_CENTER,70,1);
m_list.InsertColumn(7,"微机原理",LVCFMT_CENTER,70,1);
m_list.InsertColumn(8,"算法分析",LVCFMT_CENTER,70,1);
m_list.InsertColumn(9,"图论代数",LVCFMT_CENTER,70,1);
m_list.InsertColumn(10,"工程经济学",LVCFMT_CENTER,80,1);
m_list.InsertColumn(11,"通信原理",LVCFMT_CENTER,70,1);
m_list.InsertColumn(12,"信号系统",LVCFMT_CENTER,70,1);
m_list.InsertColumn(13,"计算方法",LVCFMT_CENTER,70,1);
m_list.InsertColumn(14,"数字电路",LVCFMT_CENTER,70,1);
m_list.InsertColumn(15,"模拟电路",LVCFMT_CENTER,70,1);
m_list.InsertColumn(16,"数理逻辑",LVCFMT_CENTER,70,1);
m_list.InsertColumn(17,"集合论",LVCFMT_CENTER,70,1);
m_gradeset.Open();
m_gradeset.MoveFirst();
int nIndex,i=0;
while(!m_gradeset.IsEOF())
{
nIndex= m_list.InsertItem(i,m_gradeset.m_id);
m_list.SetItemText(nIndex,1,m_gradeset.m_C__);
m_list.SetItemText(nIndex,2,m_gradeset.m_data);
m_list.SetItemText(nIndex,3,m_gradeset.m_os);
m_list.SetItemText(nIndex,4,m_gradeset.m_soft);
m_list.SetItemText(nIndex,5,m_gradeset.m_compiler);
m_list.SetItemText(nIndex,6,m_gradeset.m_pc);
m_list.SetItemText(nIndex,7,m_gradeset.m_suanfa);
m_list.SetItemText(nIndex,8,m_gradeset.m_graph);
m_list.SetItemText(nIndex,9,m_gradeset.m_jinji);
m_list.SetItemText(nIndex,10,m_gradeset.m_tongxin);
m_list.SetItemText(nIndex,11,m_gradeset.m_xinhao);
m_list.SetItemText(nIndex,12,m_gradeset.m_jisuan);
m_list.SetItemText(nIndex,13,m_gradeset.m_shuzi);
m_list.SetItemText(nIndex,14,m_gradeset.m_moni);
m_list.SetItemText(nIndex,15,m_gradeset.m_luoji);
m_list.SetItemText(nIndex,16,m_gradeset.m_jihe);
i++;
m_gradeset.MoveNext();
}
m_gradeset.Close();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CGrade::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CGrade)
DDX_Control(pDX, IDC_LIST, m_list);
DDX_Text(pDX, IDC_STUDENTADRESS, m_adress);
DDX_Text(pDX, IDC_STUDENTBORN, m_born);
DDX_Text(pDX, IDC_STUDENTID, m_id);
DDX_Text(pDX, IDC_STUDENTNAME, m_name);
DDX_Text(pDX, IDC_STUDENTSEX, m_sex);
DDX_Text(pDX, IDC_STUDENTTEL, m_tel);
DDX_Text(pDX, IDC_SYSPASSWORD, m_syspassword);
DDX_Text(pDX, IDC_SYSTEMGUEXT, m_sysuser);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CGrade, CDialog)
//{{AFX_MSG_MAP(CGrade)
ON_BN_CLICKED(IDC_UP, OnUp)
ON_BN_CLICKED(IDC_EXIT, OnExit)
ON_NOTIFY(NM_DBLCLK, IDC_LIST, OnDblclkList)
ON_NOTIFY(NM_CLICK, IDC_LIST, OnClickList)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CGrade message handlers
void CGrade::OnUp()
{
// TODO: Add your control notification handler code here
CGuestSet m_guest;
bool flag=1;
m_guest.Open();
m_guest.MoveLast();
// m_guest.MovePrev();
UpdateData(1);
if(m_sysuser=="")
{
MessageBox("请输入系统管理员名称",NULL,MB_OK|MB_ICONWARNING);
flag=1;
}
else if(m_syspassword=="")
{
MessageBox("请输入系统管理员帐户",NULL,MB_OK|MB_ICONWARNING);
flag=1;
}
else if(m_guest.m_guest==m_sysuser && m_guest.m_password==m_syspassword)
{
CGradeSet m_set;
int i=0;
m_set.Open();
m_set.MoveFirst();
while(i<nItem)
{
m_set.MoveNext();
i++;
}
m_set.Edit();
m_set.m_C__= m_editdlg.m_cpp;
m_set.m_compiler= m_editdlg.m_compiler;
m_set.m_data=m_editdlg.m_data;
m_set.m_graph=m_editdlg.m_graph;
m_set.m_jihe=m_editdlg.m_jihe;
m_set.m_jinji=m_editdlg.m_jinji;
m_set.m_jisuan=m_editdlg.m_jisuan;
m_set.m_luoji=m_editdlg.m_luoji;
m_set.m_moni=m_editdlg.m_moni;
m_set.m_os=m_editdlg.m_os;
m_set.m_pc=m_editdlg.m_pc;
m_set.m_shuzi=m_editdlg.m_shuzi;
m_set.m_soft=m_editdlg.m_soft;
m_set.m_suanfa=m_editdlg.m_suanfa;
m_set.m_tongxin=m_editdlg.m_tongxin;
m_set.m_xinhao=m_editdlg.m_xinhao;
m_set.Update();
m_set.Close();
MessageBox(" 恭喜你!!\n已经成功的更新数据库了",NULL,MB_OK|MB_ICONINFORMATION);
flag=0;
m_editdlg.DestroyWindow(); //释放内存变量
CDialog::OnOK();
}
if(flag)
{
MessageBox(" 对不起你 !!\n没有更新数据库的权限",NULL,MB_OK|MB_ICONINFORMATION);
}
m_guest.Close();
// m_editdlg.DestroyWindow(); //释放内存变量 这里不需要了
// CDialog::OnOK();
}
void CGrade::OnExit()
{
// TODO: Add your control notification handler code here
CDialog::OnCancel();
CDialog::DestroyWindow();
}
void CGrade::OnDblclkList(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
m_gradeset.Open();
m_gradeset.MoveFirst();
// CEditGradeDlg m_editdlg;
/*获取要修改的数据*/
nItem = m_list.GetNextItem( -1, LVNI_ALL | LVNI_SELECTED);
m_editdlg.m_cpp=m_list.GetItemText(nItem,1);
m_editdlg.m_data=m_list.GetItemText(nItem,2);
m_editdlg.m_os=m_list.GetItemText(nItem,3);
m_editdlg.m_soft=m_list.GetItemText(nItem,4);
m_editdlg.m_compiler=m_list.GetItemText(nItem,5);
m_editdlg.m_pc=m_list.GetItemText(nItem,6);
m_editdlg.m_suanfa=m_list.GetItemText(nItem,7);
m_editdlg.m_graph=m_list.GetItemText(nItem,8);
m_editdlg.m_jinji=m_list.GetItemText(nItem,9);
m_editdlg.m_tongxin=m_list.GetItemText(nItem,10);
m_editdlg.m_xinhao=m_list.GetItemText(nItem,11);
m_editdlg.m_jisuan=m_list.GetItemText(nItem,12);
m_editdlg.m_shuzi=m_list.GetItemText(nItem,13);
m_editdlg.m_moni=m_list.GetItemText(nItem,14);
m_editdlg.m_luoji=m_list.GetItemText(nItem,15);
m_editdlg.m_jihe=m_list.GetItemText(nItem,16);
/*获取要修改的数据*/
if(m_editdlg.DoModal()==IDOK)
{
m_list.SetItemText(nItem,1,m_editdlg.m_cpp);
m_list.SetItemText(nItem,2,m_editdlg.m_cpp);
m_list.SetItemText(nItem,3,m_editdlg.m_cpp);
m_list.SetItemText(nItem,4,m_editdlg.m_cpp);
m_list.SetItemText(nItem,5,m_editdlg.m_cpp);
m_list.SetItemText(nItem,6,m_editdlg.m_cpp);
m_list.SetItemText(nItem,7,m_editdlg.m_cpp);
m_list.SetItemText(nItem,8,m_editdlg.m_cpp);
m_list.SetItemText(nItem,9,m_editdlg.m_cpp);
m_list.SetItemText(nItem,10,m_editdlg.m_cpp);
m_list.SetItemText(nItem,11,m_editdlg.m_cpp);
m_list.SetItemText(nItem,12,m_editdlg.m_cpp);
m_list.SetItemText(nItem,13,m_editdlg.m_cpp);
m_list.SetItemText(nItem,14,m_editdlg.m_cpp);
m_list.SetItemText(nItem,15,m_editdlg.m_cpp);
m_list.SetItemText(nItem,16,m_editdlg.m_cpp);
m_list.Update(nItem);
}
m_gradeset.Close();
*pResult = 0;
}
void CGrade::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
CBaseSet m_baseset;
m_baseset.Open();
m_baseset.MoveFirst();
m_gradeset.Open();
int nItem = m_list.GetNextItem( -1, LVNI_ALL | LVNI_SELECTED);
m_id=m_list.GetItemText(nItem,0);
while(!m_baseset.IsEOF())
{
if(m_baseset.m_id==m_id)
{
m_adress=m_baseset.m_adress;
m_born=m_baseset.m_born;
m_name=m_baseset.m_name;
m_sex=m_baseset.m_sex;
m_tel=m_baseset.m_tel;
break;
}
m_baseset.MoveNext();
}
UpdateData(0);
m_baseset.Close();
m_gradeset.Close();
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -