📄 dlgaddstu.cpp
字号:
// DLGAddStu.cpp : implementation file
//
#include "stdafx.h"
#include "STUGRADE.h"
#include "DLGAddStu.h"
#include "MainFrm.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDLGAddStu dialog
extern CMainFrame *pFrame;
CDLGAddStu::CDLGAddStu(CWnd* pParent /*=NULL*/)
: CDialog(CDLGAddStu::IDD, pParent)
{
//{{AFX_DATA_INIT(CDLGAddStu)
m_Date = 0;
//}}AFX_DATA_INIT
}
void CDLGAddStu::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDLGAddStu)
DDX_Control(pDX, IDC_CHECK1, m_CHECK);
DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_Date);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDLGAddStu, CDialog)
//{{AFX_MSG_MAP(CDLGAddStu)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDLGAddStu message handlers
BOOL CDLGAddStu::OnInitDialog()
{
CDialog::OnInitDialog();
SetDlgItemText(IDC_EDIT4,"生日:");
//初始化班级
pCombo_Class = (CComboBox*) GetDlgItem(IDC_CBO_Class);
pCombo_Class->ResetContent();
CString szSQL="SELECT * FROM 班级信息 ORDER BY 班级名称";
CString Nostr,str;
_variant_t vCno,vCname;
_RecordsetPtr pT_set;
pT_set.CreateInstance(__uuidof( Recordset ));
pT_set->Open((LPCSTR)szSQL,RS_PARAM);
while(!pT_set->adoEOF)
{
vCno=pT_set->GetCollect("班级代码");
vCname=pT_set->GetCollect("班级名称");
Nostr=(BSTR)vCno.pbstrVal;
str=(BSTR)vCname.pbstrVal; //AfxMessageBox(aa);
pCombo_Class->AddString(str);
pT_set->MoveNext();
}
//pCombo_Class->SetCurSel(0);
pT_set->Close();
if (m_Flag==1) //增加
{
//性别
pCombo_Sex = (CComboBox*) GetDlgItem(IDC_CBO_SEX);
pCombo_Sex->AddString("男");
pCombo_Sex->AddString("女");
pCombo_Sex->SetCurSel(0);
CDateTimeCtrl *pDate = (CDateTimeCtrl*)GetDlgItem(IDC_DATETIMEPICKER1);
COleDateTime oletimeTime(1982, 1, 1, 0, 0, 0); //1982 1月 1日
VERIFY(pDate->SetTime(oletimeTime));
}
else if (m_Flag==0) //修改
{
pCombo_Sex = (CComboBox*) GetDlgItem(IDC_CBO_SEX);
pCombo_Sex->AddString("男");
pCombo_Sex->AddString("女");
if (m_Msex=="男")
pCombo_Sex->SetCurSel(0);
else
pCombo_Sex->SetCurSel(1);
int nIndex=pCombo_Class->FindString(0,m_Mcname);
if (nIndex!=-1) //在combo已有的
pCombo_Class->SetCurSel(nIndex);
SetDlgItemText(IDC_EDIT1,this->m_Msno);
SetDlgItemText(IDC_EDIT2,this->m_Msname);
SetDlgItemText(IDOK,"修改");
SetWindowText("修改学生");
}
else if (m_Flag==2) //查询 不要返回生日了,没有什么意义,用专业来代替
{
pCombo_Sex = (CComboBox*) GetDlgItem(IDC_CBO_SEX);
pCombo_Sex->AddString("男");
pCombo_Sex->AddString("女");
CEdit *pEdit = (CEdit*)GetDlgItem(IDC_EDIT4);
VERIFY(pEdit->ShowWindow(FALSE));
CDateTimeCtrl *pDate = (CDateTimeCtrl*)GetDlgItem(IDC_DATETIMEPICKER1);
VERIFY(pDate->ShowWindow(FALSE));
this->m_CHECK.ShowWindow(TRUE);
this->m_CHECK.SetCheck(true);
SetDlgItemText(IDOK,"查询");
SetWindowText("查询学生");
}
return TRUE;
}
void CDLGAddStu::OnOK()
{
// TODO: Add extra validation here
UpdateData(TRUE);
//取学号
CString Sno;
GetDlgItemText(IDC_EDIT1,Sno);
Sno.TrimLeft(); Sno.TrimRight();
//取姓名
CString Sname;
GetDlgItemText(IDC_EDIT2,Sname);
Sname.TrimLeft(); Sname.TrimRight();
//取班号
CString Classname;
GetDlgItemText(IDC_CBO_Class,Classname);
Classname.TrimLeft(); Classname.TrimRight();
//取性别
CString Sex;
GetDlgItemText(IDC_CBO_SEX,Sex);
Sex.TrimLeft(); Sex.TrimRight();
//电话
CString Phone;
GetDlgItemText(IDC_EDIT3,Phone);
Phone.TrimLeft(); Phone.TrimRight();
//取出生年月
CString date;
int Year =m_Date.GetYear();
int Month =m_Date.GetMonth();
int Day =m_Date.GetDay();
date.Format("%d-%d-%d",Year,Month,Day);
switch (m_Flag)
{
case 2: //查询
if (m_CHECK.GetCheck())
*m_CHECKED=m_CHECK;
if (Sno.IsEmpty())
*m_Sno="NULL";
else
*m_Sno=Sno;
if (Sname.IsEmpty())
*m_Sname="NULL";
else
*m_Sname=Sname;
if (Classname.IsEmpty())
*m_Cno = "NULL";
else
{
CString szSQL;
szSQL.Format("SELECT * FROM 班级信息 WHERE 班级名称 = '%s'",Classname);
CString Nostr,str;
_variant_t vCno,vCname;
_RecordsetPtr pT_set;
pT_set.CreateInstance(__uuidof( Recordset ));
pT_set->Open((LPCSTR)szSQL,RS_PARAM);
if (!pT_set->adoEOF)
{
vCno=pT_set->GetCollect("班级代码");
vCname=pT_set->GetCollect("班级名称");
Nostr=(BSTR)vCno.pbstrVal;
*m_Cno=Nostr;
}
else
{
MessageBox("班级不存在!","出错",MB_OK|MB_ICONINFORMATION);
return;
}
pT_set->Close();
}
if (Sex.IsEmpty())
*m_Sex = "NULL";
else
{
if ((Sex !="男") && (Sex !="女"))
{
int aa = MessageBox("要查询的是男学生吗?","查询条件出错",MB_YESNO|MB_ICONQUESTION);
if (aa==IDYES)
Sex="男";
else
Sex="女";
}
*m_Sex=Sex;
}
if (Phone.IsEmpty())
*m_Phone="NULL";
else
*m_Phone=Phone;
*m_Birth = "NULL";
break;
default:
if (Sno.IsEmpty())
{
MessageBox("学号不能为空!","出错",MB_OK|MB_ICONINFORMATION);
return;
}
else
*m_Sno=Sno;
if (Sname.IsEmpty())
{
MessageBox("姓名不能为空!","出错",MB_OK|MB_ICONINFORMATION);
return;
}
else
*m_Sname=Sname;
if (Classname.IsEmpty())
{
MessageBox("班级不能为空!","出错",MB_OK|MB_ICONINFORMATION);
return;
}
else
{
CString szSQL;
szSQL.Format("SELECT * FROM 班级信息 WHERE 班级名称 = '%s'",Classname);
CString Nostr,str;
_variant_t vCno,vCname;
_RecordsetPtr pT_set;
pT_set.CreateInstance(__uuidof( Recordset ));
pT_set->Open((LPCSTR)szSQL,RS_PARAM);
if (!pT_set->adoEOF)
{
vCno=pT_set->GetCollect("班级代码");
vCname=pT_set->GetCollect("班级名称");
Nostr=(BSTR)vCno.pbstrVal;
*m_Cno=Nostr;
}
else
{
MessageBox("班级不存在!","出错",MB_OK|MB_ICONINFORMATION);
return;
}
pT_set->Close();
}
if ((Sex !="男") && (Sex !="女"))
{
int aa = MessageBox("该学生是男的吗?","性别出错",MB_YESNO|MB_ICONQUESTION);
if (aa==IDYES)
Sex="男";
else
Sex="女";
}
*m_Sex=Sex;
if (Phone.IsEmpty()) *m_Phone="NULL";
else
*m_Phone=Phone;
*m_Birth = date;
}
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -