⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dlgaddstu.cpp

📁 成绩管理系统
💻 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 + -