基于MFC的员工管理系统设计

基于MFC的员工管理系统设计

ID:41729314

大小:138.36 KB

页数:9页

时间:2019-08-30

上传者:U-991
基于MFC的员工管理系统设计_第1页
基于MFC的员工管理系统设计_第2页
基于MFC的员工管理系统设计_第3页
基于MFC的员工管理系统设计_第4页
基于MFC的员工管理系统设计_第5页
资源描述:

《基于MFC的员工管理系统设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

员工管理系统3上次练习创建了MFC基于对话框应用程序Guanli,已经实现员工管理系统的登录功能和权限管理功能,本次练习继续完善员工管理系统的其余功能。注意:先修改一个小问题,在之前的软件操作中,由于登录窗口弹出的时候主窗口是隐藏状态,这样主窗口在任务栏是没有显示的,随之而来的子窗口也在任务栏无显示。如果想要修改这种情况只需不指定主窗口即可。禁用m_pMainWnd=&dlg;BOOLCGuanliApp::InitInstance()CLoginDlgldlg;〃创建“登录”戏话框对象"lg〃调用主对话框IF(IDCAHCEL-ldlg.DoModal())〃判断如果按“逋出”樋则关闭对话框returnFALSE;CGuanliDlgdig;//npMainWnd丄&dig;dlg.DoModal();returnFALSE;1•插入一个新对话框IDD」NFO_DLG,并创建该对话框对应的类ClnfoDIg类,制作“员工信息”模块。禁用该对话框的IDOK,并删除“确定”和“取消”命令按钮。对话属性乍常规样式|更多样式|扩展样式|更多扩展样式|ID:[lDDJNFO_DLG习标題(CJ:|员工信息I字体名称:System字体大小:10位萱丫0类汕㈣:字体(0J...I位萱 X0 NewClassOKCancelClassinformationName:|cinfoDlgFilename:InfoDIg.cppChange...旦aseclass:|cDialog*0MogID:|lDD_INFO_DLG3AutomationGNone厂AutomationCCreateablebytypeID:[Guanli.InfoDIg添加2个命令按钮,IDC_ADD,IDC_DEL,1个列表控件IDC_LIST,如下图:PushButton冨性卡辔「额"“t样式I扩展样式IID:|IDC_ADD3标题|£):|添加(&A)17可见(S)厂组(Q厂帮助ID(H)-厂已禁用回臣制表站回PushButton冨性昭LHj|样式|扩展样式|ID:"DC-DEL3标题酣:〔删除(&D)疋可见(3厂组(£1厂帮助10(H)厂已禁用(AI“制表站回 列表控件隹性,・・・・・.血缪常规i样式更多样式|扩展样式|査看M:1报告排列回:1顶端排序必1无17单个选择(S)厂不滚动㈣厂自动排列(V)厂没有列标题(£]厂没有标签换行回厂不排序标题凹厂编辑标签(0)厂总是显示选择凶乙为实现“添加”功能:新建一个对话框IDD_INPUT_DLG专用于添加员工信息,并添加ClnputDIg类。对话属性虫缪常规I样式I更多样式I扩展样式I更多扩展样式IID:|lDD_INPUT_DLG|标题(£):|数据录入字体名称:System菜单(MPI0名称㈣:I字体大小:io'•字体(Q)・・・I位置X|0—位置Y IDDJNPUT_DLG对话框包括如下控件:3个编辑框IDC_NUMB,IDC_NAME,IDC_MONEY;1个日期时间选择器IDC_BIRTH;1个组合框IDC.DEPT;4个静态文本标签,2个命令按钮。设置完毕后按Ctrl+D调整控件焦点,使IDC_NUMB编辑框最先获得焦点。日期时间选取器雇性Q虫超常规IW)1扩展样式|格式(B:V靠右排列(B)厂显示没有㈣岷丽3厂使用旗转控件O厂允许编辑(EJComboBox扈性皿纟常规I数据样式I扩展样式I类型F拉列表所有者绘制㈣:II3厂有字串回巨分类回▽垂直滚动凹厂没有完整高度(H)厂OEM转换⑹厂自动水平滚动(U)厂禁止不滚动回厂大写字母(B)厂小写字母固向组合框添加初始数据:换行时按Ctrl+Enter 1S立口立口立口立口发政養3•为“用户管理对话框”——“员工信息”命令按钮添加消息代码:uoidCGuanliDlg::0nInFo()1OO);//returnTRUEunlessyousetthefocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE5.IDD_INFO_DLG对话框“添加”按钮代码,实现点击“添加”按钮之后打开IDD_INPUT_DLG对话框。注意插入InputDIg.h头文件。uoidCInFoDlg::OnAdd()'ClnputDlgdig;〃定义数据录入独话框类科象dig■n_pInFoDlg=this;//&InfoDlg指针保存到n_pInFoDlg全局变量dlg.DoModal();〃调用InputDlg才话框~IDDJNFO.DLG对话框“删除”命令按钮代码,此步操作可以放在最后做。uoidClnFoDlg::0nDel()GetFirstSelectedItenPosition();intnSel■pListtEn(po5);iF(nSeKO)GetltemText(nSel,o));IF(IDYES==ftfxMessageBox(str,MB_VESN0))pList->Delete!ten(nSel);6.IDDJNPUT_DLG对话框“添加”命令按钮代码:a.在InputDIg.h中添加一个全局变量m_plnfoDlg,用于关联InfoDIg的m」ist。注意包含InfoDIg.h头文件,如下图: ttinclude-InFoDlg.h-[classClnputDlg:publicCDialog{//Constructionpublic:CInputDlg(CWnd»pParent=HULL);//standardconstructorClnFoDlg*n_pInFoDlg;•••MB■b・添加ClnputDlg::OnOK()代码:uoidCInputDlg::OnOK(){//CDialog::0n0K();CStririgstr;叽gItemText(IDCJJUHB>Str);〃获取IDC_NUHB空间内容到s"CListCtrlfclist=fn_pInfoDlg->n_li5t://m.pInfoDlg^^list#将两个对话框通过全局墉矢联起来//CListCtrl&"st是给G_pIMoDlg-〉m_list天联指軒起的别名inti=(1>nCount=list・Gm;while(KnCount)〃遍历列実框.如果有•相同记录则提示信息(1)==str)>list.InsertIteR(nCountfstr);〃插入编吕到列表擢件的第。列GetDlgltenText(IDCNrtME,str);//取IDCMME控件丙容到strlist.SetItenText(nCount,1,str);〃福入捱名到前美控件苗第1列,下同GetDlgItenText(1DCBIRTHrstr);list.SetItemText(nCount,2,str);GetDlgltpnTpxt(LPCJ)JPT,str);list.SetltemText(nCountf3fstr);CetDlgIteraText(IDCM0HEV,str);list.Set!tenTPXt(nCount,M,str);还可以进一步改善代码使软件功能更加人性化,如下图: uoidClnputDlg::0n0K()SQ果IDDK没有获得焦点则将焦点跳转到下一个控件//CDialog::OnOK();if(GetFocus()?=GetDlgItem(IDOK))n_list;捌名〃m_pInFoDlg-〉m_:LisE是将两个对话框通过//CListCtrlfelist是给n_pInfoDlg->n_list关inti-09nCount"list.GetItenCount();whi"(iiF(IDNO--AFxMessageBox(定添加记录吗?••川B_YESN0))〃显示提示信息,如果选NO则返回return;list.InsertItem(nCountfstr);〃插入编号到列表控件的第咬ljGetDlgItemText(IDCNAMEfstr);〃朋IDCNAME控件内谷到strHst.SetItenText(nCount919str);/腐入姓名到列叢控祥耐第1列,下同GetDlgItenText(IDC_BlRIH»str);list.SetItemText(nCount,2tstr);GetDlgItenText(IDOiPI>str);list«SetItemText(nCountf3tstr);GetDlqItenText(IDCMONEV.str);list.SetItenText(nCount,4,str);SgtDlgItQFiText(WC」Mg「・);〃^加后清空相应控件内容SetDlgItenText(IDC_NAME,);SEtDlgItenText《IPC-BlRniJ・);SEtDigitQ门tqxu…);SetDlgItenText(IDCJ10NEVGgtDlgI*m丄匹」世!理)・>SHFocus();〃使工号控件获得焦点c・想让InputDIg对话框启动时预置一些信息,比如生日,部门。可以进行如下操作:为ClnputDIg类添加OnlnitDialog()消息函数,让对话框在初始化时预置信息。BOOLClnputDIg::0nInitDialog()SetTine(&time);〃设置时间白期控件缺省值CComboBox*pConbo«(CCoRboBox»)GetDlgItem(IDC_DEPT);〃取组合框控PCombo->SetCurSel(3);〃0-财务部,仆测试訊乳行政訊3-开发訥以稱音字痔returnTRUE;//returnTRUEunlessyousettheFocustoacontrol//EXCEPTION:OCXPropertyPagesshouldreturnFALSE

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭