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

📄 adddialog.cpp

📁 用C++语言编写得职工信息管理系统
💻 CPP
字号:
// AddDialog.cpp : implementation file
//

#include "stdafx.h"
#include "Worker.h"
#include "AddDialog.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CAddDialog dialog


CAddDialog::CAddDialog(CWnd* pParent /*=NULL*/)
	: CDialog(CAddDialog::IDD, pParent)
{
	//{{AFX_DATA_INIT(CAddDialog)
	m_Name = _T("");
	m_ZhiCheng = _T("");
	m_Marrige = 0;
	m_Xueli = _T("");
	m_Money = 0.0;
	m_Num = _T("");
	m_nYear = 1970;
	m_nMonth = 0;
	//}}AFX_DATA_INIT
}


void CAddDialog::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CAddDialog)
	DDX_Control(pDX, IDC_CHECK2, m_Woman);
	DDX_Control(pDX, IDC_CHECK1, m_Man);
	DDX_Control(pDX, IDOK, m_Ok);
	DDX_Control(pDX, IDCANCEL, m_Cancel);
	DDX_Text(pDX, IDC_EDIT1, m_Name);
	DDX_CBString(pDX, IDC_COMBO1, m_ZhiCheng);
	DDX_CBIndex(pDX, IDC_COMBO2, m_Marrige);
	DDX_CBString(pDX, IDC_COMBO3, m_Xueli);
	DDV_MaxChars(pDX, m_Xueli, 10);
	DDX_Text(pDX, IDC_EDIT3, m_Money);
	DDX_Text(pDX, IDC_EDIT2, m_Num);
	DDV_MaxChars(pDX, m_Num, 15);
	DDX_Text(pDX, IDC_EDIT4, m_nYear);
	DDX_CBIndex(pDX, IDC_COMBO4, m_nMonth);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CAddDialog, CDialog)
	//{{AFX_MSG_MAP(CAddDialog)
	ON_BN_CLICKED(IDOK, OnAdd)
	ON_BN_CLICKED(IDC_CHECK1, OnMan)
	ON_BN_CLICKED(IDC_CHECK2, OnWoman)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CAddDialog message handlers

void CAddDialog::OnAdd() 
{
	// TODO: Add your control notification handler code here
	UpdateData(TRUE);

	CMyDataBase database;
	CPerson* person1;

	if(!database.Open())  //第一次添加时新建
	{
		if(MessageBox("数据库无法打开!\n\n是否现在新建?","询问",MB_ICONQUESTION|MB_YESNO)==IDYES)
		{
			database.Build();
		}
		return;
	}
	if(m_Name==_T("")||m_Num==_T("")||m_Xueli==_T("")||m_ZhiCheng==_T(""))//检查信息是否填写完整
	{
		MessageBox("请把信息填写完整!","提示",MB_ICONEXCLAMATION | MB_ICONWARNING);
		return;
	}
	while((person1=database.GetPerson())!=NULL)
	{
		if(person1->GetNum()==m_Num)//检查编号是否与其他职工编号相同
		{
			MessageBox("该编号与其他职工编号相同。","提示",MB_ICONASTERISK|MB_ICONINFORMATION);
			((CEdit*)GetDlgItem(IDC_EDIT2))->SetSel(0,15);
			GetDlgItem(IDC_EDIT2)->SetFocus();
			return;
		}			
	}
	delete person1;
	database.Close();
//================================================================================================
//把信息存入文件
	CPerson person;
	person.SetNum(m_Num);
	person.SetName(m_Name);
	person.SetMoney(m_Money);
	person.SetXueLi(m_Xueli);
	person.SetZhiCheng(m_ZhiCheng);
	person.SetBtdYear(m_nYear);
	person.SetBtdMonth(m_nMonth+1);
	if(m_Marrige==1)
		person.SetMarried(false);
	else
		person.SetMarried(true);
	if(m_Man.GetCheck())
		person.SetSex(CString("男"));
	else 
		person.SetSex(CString("女"));

	if(!database.Open())
	{
		MessageBox("数据库无法打开!","错误",MB_ICONHAND|MB_ICONSTOP|MB_ICONERROR);
		return;
	}
	database.AddPerson(&person);
	database.Close();
	CDialog::OnOK();
}

void CAddDialog::OnCancel() 
{
	// TODO: Add extra cleanup here
	
	CDialog::OnCancel();
}


void CAddDialog::OnMan() 
{
	// TODO: Add your control notification handler code here
	m_Man.SetCheck(TRUE);
	m_Woman.SetCheck(FALSE);
}

void CAddDialog::OnWoman() 
{
	// TODO: Add your control notification handler code here
	m_Man.SetCheck(FALSE);
	m_Woman.SetCheck(TRUE);
}

BOOL CAddDialog::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	m_Man.SetCheck(TRUE);
	m_Woman.SetCheck(FALSE);	
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -