?? studentgrademanage.cpp
字號:
// StudentGradeManage.cpp : implementation file
//
#include "stdafx.h"
#include "cj.h"
#include "StudentGradeManage.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CStudentGradeManage dialog
CStudentGradeManage::CStudentGradeManage(CWnd* pParent /*=NULL*/)
: CDialog(CStudentGradeManage::IDD, pParent)
{
//{{AFX_DATA_INIT(CStudentGradeManage)
m_StrstudentID = _T("");
m_grade = _T("");
//}}AFX_DATA_INIT
}
void CStudentGradeManage::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CStudentGradeManage)
DDX_Control(pDX, IDC_cob_StudentID, m_studentID);
DDX_Control(pDX, IDC_cob_XueQi, m_xueqi);
DDX_Control(pDX, IDC_cob_XUEJie, m_xuejie);
DDX_Control(pDX, IDC_cob_XiBie, m_xibie);
DDX_Control(pDX, IDC_cob_Kemu, m_kemu);
DDX_Control(pDX, IDC_cob_Class, m_class);
DDX_Control(pDX, IDC_CHECK_Lock, m_LockChecked);
DDX_CBString(pDX, IDC_cob_StudentID, m_StrstudentID);
DDX_Text(pDX, IDC_edit_Grade, m_grade);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CStudentGradeManage, CDialog)
//{{AFX_MSG_MAP(CStudentGradeManage)
ON_BN_CLICKED(IDC_cmd_JieSuo, OncmdJieSuo)
ON_BN_CLICKED(IDC_Delete, OnDelete)
ON_BN_CLICKED(IDC_Find, OnFind)
ON_BN_CLICKED(IDC_Modif, OnModif)
ON_CBN_SELCHANGE(IDC_cob_XUEJie, OnSelchangecobXUEJie)
ON_CBN_SELCHANGE(IDC_cob_XiBie, OnSelchangecobXiBie)
ON_CBN_SELCHANGE(IDC_cob_Class, OnSelchangecobClass)
ON_CBN_SELCHANGE(IDC_cob_Kemu, OnSelchangecobKemu)
ON_CBN_SELCHANGE(IDC_cob_XueQi, OnSelchangecobXueQi)
ON_CBN_SELCHANGE(IDC_cob_StudentID, OnSelchangecobStudentID)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CStudentGradeManage message handlers
BOOL CStudentGradeManage::OnInitDialog()
{
CDialog::OnInitDialog();
//設置學界的下拉框所取的值。
if(!m_database.Open(_T("student"))) return false;
CRecordset rs(&m_database);
CString str;
rs.Open(CRecordset::forwardOnly,"select 學界名稱 from 學界");
while(!rs.IsEOF())
{
rs.GetFieldValue("學界名稱",str);
m_xuejie.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置系別下拉框所取的值
rs.Open(CRecordset::forwardOnly,"select 系別名稱 from 系別");
while(!rs.IsEOF())
{
rs.GetFieldValue("系別名稱",str);
m_xibie.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置班級下拉框所取的值
rs.Open(CRecordset::forwardOnly,"select 班級名稱 from 班級");
while(!rs.IsEOF())
{
rs.GetFieldValue("班級名稱",str);
m_class.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置學期下拉框所取的值
rs.Open(CRecordset::forwardOnly,"select 學期 from 學期");
while(!rs.IsEOF())
{
rs.GetFieldValue("學期",str);
m_xueqi.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置初始值
m_xueqi.SetCurSel(0);
m_xuejie.SetCurSel(0);
m_xibie.SetCurSel(0);
m_class.SetCurSel(0);
DataSetKemu();
DataSetStudentID();
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CStudentGradeManage::OncmdJieSuo()
{
m_LockChecked.SetCheck(0);//復選框設置為不選
m_xuejie.ResetContent();//清空
m_xibie.ResetContent();//清空系別組合框中的所有項
m_class.ResetContent();//清空班級組合框中的所有項
m_xueqi.ResetContent();//清空學期組合框中的所有項
m_kemu.ResetContent();//清空科目組合框中的所有項
m_studentID.ResetContent();//清空學號組合框中的所有項
CRecordset rs(&m_database);
CString str;
rs.Open(CRecordset::forwardOnly,"select 學界名稱 from 學界");
while(!rs.IsEOF())
{
rs.GetFieldValue("學界名稱",str);
m_xuejie.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置系別下拉框所取的值
rs.Open(CRecordset::forwardOnly,"select 系別名稱 from 系別");
while(!rs.IsEOF())
{
rs.GetFieldValue("系別名稱",str);
m_xibie.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置班級下拉框所取的值
rs.Open(CRecordset::forwardOnly,"select 班級名稱 from 班級");
while(!rs.IsEOF())
{
rs.GetFieldValue("班級名稱",str);
m_class.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置學期下拉框所取的值
rs.Open(CRecordset::forwardOnly,"select 學期 from 學期");
while(!rs.IsEOF())
{
rs.GetFieldValue("學期",str);
m_xueqi.AddString(str);
rs.MoveNext();
}
rs.Close();
//設置初始值
m_xueqi.SetCurSel(0);
m_xuejie.SetCurSel(0);
m_xibie.SetCurSel(0);
m_class.SetCurSel(0);
DataSetKemu();
DataSetStudentID();
m_grade=_T("");
UpdateData(FALSE);
}
void CStudentGradeManage::OnDelete()
{
UpdateData();//更新變量的值
m_kemu.GetLBText(m_kemu.GetCurSel(),strKemu);//得到科目
DataChecked();//判定鎖定
sscanf(m_grade,"%f",&f_grade);
CRecordset rs(&m_database);
if((m_StrstudentID.IsEmpty())||(m_grade.IsEmpty()))
{
MessageBox("操作有誤!您不能修改空信息!","系統提示:",MB_OK|MB_ICONASTERISK);
m_StrstudentID=_T("");
}
else
{
rs.Open(CRecordset::forwardOnly,
"select * from 學生表 where 學界ID='"+strXuejieID+"' and 系別ID='"+strXiBieID+"' and 班級ID='"+strClassID+"' and 學號ID='"+m_StrstudentID+"'");
icount=rs.GetRecordCount();
rs.Close();
if(icount==0)
{
MessageBox("不存在此學號!請進行添加工作!","系統提示:",MB_OK|MB_ICONASTERISK);
m_StrstudentID=_T("");
}
else
{
rs.Open(CRecordset::forwardOnly,
"select * from 成績表 where 學界ID='"+strXuejieID+"' and 系別ID='"+strXiBieID+"' and 班級ID='"+strClassID+"' and 學期ID='"+strXueQiID+"' and 學號ID='"+m_StrstudentID+"' and 考試科目名稱='"+strKemu+"'");
count=rs.GetRecordCount();
rs.Close();
if(count==0)
{
MessageBox("您的輸入有誤!","系統提示:",MB_OK|MB_ICONASTERISK);
}
else
{
SQL="delete from 成績表 where 學界ID='"+strXuejieID+"' and 系別ID='"+strXiBieID+"' and 班級ID='"+strClassID+"' and 學期ID='"+strXueQiID+"' and 學號ID='"+m_StrstudentID+"' and 考試科目名稱='"+strKemu+"'";
if(MessageBox("真的要刪除此記錄嗎?","刪除記錄詢問:",MB_OKCANCEL|MB_ICONQUESTION)==IDOK)
{
m_database.ExecuteSQL(SQL);
MessageBox("完成操作!","系統提示:",MB_OK|MB_ICONASTERISK);
m_grade=_T("");
m_StrstudentID=_T("");
UpdateData(FALSE);//刷新
}
}
}
}
rs.Close();
}
void CStudentGradeManage::OnFind()
{
// TODO: Add your control notification handler code here
}
void CStudentGradeManage::OnModif()
{
UpdateData();//更新變量的值
DataGetFourNow();//得到學界,學期,系別,班級
m_kemu.GetLBText(m_kemu.GetCurSel(),strKemu);//得到科目
DataChecked();//判定鎖定
CRecordset rs(&m_database);
if((m_StrstudentID.IsEmpty())||(m_grade.IsEmpty()))
{
MessageBox("操作有誤!您不能修改空信息!","系統提示:",MB_OK|MB_ICONASTERISK);
m_StrstudentID=_T("");
}
else
{
rs.Open(CRecordset::forwardOnly,
"select * from 學生表 where 學界ID='"+strXuejieID+"' and 系別ID='"+strXiBieID+"' and 班級ID='"+strClassID+"' and 學號ID='"+m_StrstudentID+"'");
icount=rs.GetRecordCount();
rs.Close();
if(icount==0)
{
MessageBox("不存在此學號!請進行添加工作!","系統提示:",MB_OK|MB_ICONASTERISK);
m_StrstudentID=_T("");
}
else
{
rs.Open(CRecordset::forwardOnly,
"select * from 成績表 where 學界ID='"+strXuejieID+"' and 系別ID='"+strXiBieID+"' and 班級ID='"+strClassID+"' and 學期ID='"+strXueQiID+"' and 學號ID='"+m_StrstudentID+"' and 考試科目名稱='"+strKemu+"'");
count=rs.GetRecordCount();
rs.Close();
if(count==0)
{
MessageBox("不存在此學生此科目的成績,您可以進行添加成績工作!","系統提示:",MB_OK|MB_ICONASTERISK);
m_StrstudentID=_T("");
}
else
{
SQL="update 成績表 set 成績='"+m_grade+"' where 學界ID='"+strXuejieID+"' and 系別ID='"+strXiBieID+"' and 班級ID='"+strClassID+"' and 學期ID='"+strXueQiID+"' and 學號ID='"+m_StrstudentID+"' and 考試科目名稱='"+strKemu+"'";
if(MessageBox("真的要修改此記錄嗎?","修改記錄詢問:",MB_OKCANCEL|MB_ICONQUESTION)==IDOK)
{
m_database.ExecuteSQL(SQL);
MessageBox("完成操作!","系統提示:",MB_OK|MB_ICONASTERISK);
m_grade=_T("");
m_StrstudentID=_T("");
UpdateData(FALSE);//刷新
}
}
}
}
rs.Close();
}
void CStudentGradeManage::OnOK()
{
UpdateData();//更新變量的值
DataGetFourNow();//得到學界,學期,系別,班級
m_kemu.GetLBText(m_kemu.GetCurSel(),strKemu);//得到科目
DataChecked();//判定鎖定
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -