課程設(shè)計(jì)(論文)VC++設(shè)計(jì)職工管理系統(tǒng)_第1頁(yè)
課程設(shè)計(jì)(論文)VC++設(shè)計(jì)職工管理系統(tǒng)_第2頁(yè)
課程設(shè)計(jì)(論文)VC++設(shè)計(jì)職工管理系統(tǒng)_第3頁(yè)
課程設(shè)計(jì)(論文)VC++設(shè)計(jì)職工管理系統(tǒng)_第4頁(yè)
課程設(shè)計(jì)(論文)VC++設(shè)計(jì)職工管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、目 錄1課程設(shè)計(jì)目的 12 課程設(shè)計(jì)題目(問(wèn)題)描述和要求 13系統(tǒng)分析與設(shè)計(jì) 13.1 系統(tǒng)分析 13.1.1系統(tǒng)功能分析23.2 系統(tǒng)設(shè)計(jì) 23.2.1 系統(tǒng)功能設(shè)計(jì) 23.2.2數(shù)據(jù)庫(kù)與數(shù)據(jù)表的設(shè)計(jì) 23.2.3 職工管理系統(tǒng)應(yīng)用程序框架設(shè)計(jì) 44 系統(tǒng)運(yùn)行報(bào)告 145 設(shè)計(jì)中的不足 176 總結(jié)(實(shí)習(xí)心得體會(huì))17參考書(shū)目 18用vc+設(shè)計(jì)職工管理系統(tǒng)1 課程設(shè)計(jì)目的了解軟件開(kāi)發(fā)的基本流程,學(xué)會(huì)設(shè)計(jì)簡(jiǎn)單的軟件系統(tǒng)。初步了解如何利用vc+的應(yīng)用程序向?qū)е谱鲬?yīng)用程序。通過(guò)這一次的課程設(shè)計(jì)的綜合訓(xùn)練,培養(yǎng)自己的綜合分析問(wèn)題、編程和實(shí)際動(dòng)手能力,使自己能夠更好地掌握該門課程的主要內(nèi)容,同時(shí)也增

2、強(qiáng)自己綜合分析能力。2 課程設(shè)計(jì)題目(問(wèn)題)描述和要求職工信息管理是眾多部門必須做的一項(xiàng)工作,而這些工作往往比較繁冗也很復(fù)雜,如果通過(guò)人工文件管理將會(huì)增加很多的工作,也很容易出現(xiàn)錯(cuò)誤且比較難修改,所以對(duì)一個(gè)企事業(yè)單位來(lái)講,一個(gè)好的職工信息管理系統(tǒng)能夠節(jié)省很多的工作,大大的提高工作效率,也能夠?yàn)閱挝还?jié)省不少的人力資源,也為職工信息的錄入與修改帶來(lái)了不少的便利。因?yàn)樗鶎W(xué)知識(shí)的不足,現(xiàn)在只能設(shè)計(jì)一個(gè)比較簡(jiǎn)單的信息管理系統(tǒng),該系統(tǒng)主要是要求通過(guò)一個(gè)數(shù)據(jù)庫(kù)(兩個(gè)數(shù)據(jù)表)及其相關(guān)的對(duì)話框的制作開(kāi)發(fā)、數(shù)據(jù)源的引用實(shí)現(xiàn)數(shù)據(jù)的錄入、增加、修改、刪除等功能。3 系統(tǒng)分析與設(shè)計(jì)3.1 系統(tǒng)需求分析3.1.1 系統(tǒng)功

3、能分析 能夠?qū)崿F(xiàn)一般系統(tǒng)的數(shù)據(jù)處理功能,包括數(shù)據(jù)的錄入、增加、修改、刪除等,還有信息的總體瀏覽,功能如圖3.1所示:職工管理系統(tǒng)職工信息瀏覽職工信息編輯職工工資瀏覽刪除刷新添加圖3.1 職工管理系統(tǒng)整體功能表3.2 系統(tǒng)設(shè)計(jì)3.2.1 系統(tǒng)功能設(shè)計(jì) 本系統(tǒng)具有一般系統(tǒng)的數(shù)據(jù)處理功能,包括數(shù)據(jù)的錄入、增加、修改、刪除等,另外,本系統(tǒng)將涉及職工信息表和職工工資表的操作,用戶可以在兩個(gè)表之間相互進(jìn)行功能切換,因此本系統(tǒng)的制作中需要涉及到對(duì)話框相互切換的方法,它是一個(gè)重要而且常用的方法。3.2.2數(shù)據(jù)庫(kù)與數(shù)據(jù)表的設(shè)計(jì)本系統(tǒng)將創(chuàng)建一個(gè)職工信息數(shù)據(jù)庫(kù),并在它之中創(chuàng)建兩個(gè)數(shù)據(jù)表,一個(gè)是“職工信息數(shù)據(jù)表”,一

4、個(gè)是“職工工資信息表”。利用microsoft access 2003創(chuàng)建職工管理數(shù)據(jù)庫(kù)及其數(shù)據(jù)表。啟動(dòng)microsoft access 2003應(yīng)用程序,創(chuàng)建一個(gè)空的數(shù)據(jù)庫(kù),通過(guò)使用設(shè)計(jì)器創(chuàng)建表設(shè)計(jì)上面兩個(gè)數(shù)據(jù)表。兩個(gè)數(shù)據(jù)表的結(jié)構(gòu)如下:表1 職工數(shù)據(jù)表的結(jié)構(gòu)字段名稱字段類型字段大小索引是否必須填寫職工編號(hào)數(shù)字長(zhǎng)整型唯一、主索引是職工姓名文本20是職工性別文本2是所在部門文本30是職工年齡數(shù)字整型是工作時(shí)間日期/時(shí)間8是職務(wù)文本20是職稱文本20是簡(jiǎn)歷備注默認(rèn)表2 職工工資數(shù)據(jù)表的結(jié)構(gòu)字段名稱字段類型字段大小索引是否必須填寫職工編號(hào)數(shù)字長(zhǎng)整型唯一、主索引是職工姓名文本20是基本工資數(shù)字單精度是

5、其他工資數(shù)字單精度是月收入數(shù)字單精度是3.2.3 職工管理系統(tǒng)應(yīng)用程序框架設(shè)計(jì) vc+中創(chuàng)建應(yīng)用程序可以通過(guò)創(chuàng)建一個(gè)應(yīng)用程序的框架來(lái)進(jìn)行,應(yīng)用程序框架為用戶提供了一個(gè)基本的開(kāi)發(fā)步驟。(1) 創(chuàng)建職工管理系統(tǒng)的基本框架: 啟動(dòng)vc+程序,利用工程類型為“mfc appwizard(exe)”,創(chuàng)建一個(gè)基本對(duì)話框,將這個(gè)對(duì)話框作為“職工基本信息編輯”。添加兩個(gè)命令控件按鈕“職工信息瀏覽”、“職工工資瀏覽”。在為“退出系統(tǒng)”按鈕創(chuàng)建類并添加成員變量。在vc+應(yīng)用程序中,資源是按類和成員變量進(jìn)行識(shí)別的,因此我們需要為資源中的每一個(gè)對(duì)象創(chuàng)建或聲明一個(gè)類和相應(yīng)的成員變量。由于此處該按鈕是對(duì)話框中的一個(gè)控件

6、,也就是它的一個(gè)成員,因此它是一個(gè)控件對(duì)象,不用在為它創(chuàng)建一個(gè)新類,只要為它創(chuàng)建一個(gè)成員變量即可。創(chuàng)建好成員變量后就可以為“退出系統(tǒng)”按鈕編制事件的過(guò)程代碼了,代碼如下:void cmydlg:onexitbutton() / todo: add your control notification handler code hereonok();(2)、為工程添加兩個(gè)對(duì)話框資源在前面的過(guò)程中,我們已經(jīng)同過(guò)向?qū)閼?yīng)用程序生成了一個(gè)應(yīng)用程序框架,并生成了一個(gè)系統(tǒng)主控界面對(duì)話框idd-my-dialog和一個(gè)idd-aboutbox對(duì)話框,這還不能滿足工程設(shè)計(jì)的需要,所以要添加兩個(gè)對(duì)話框資源。在“插

7、入|資源”菜單項(xiàng)新建對(duì)話框資源。由于新增的兩個(gè)對(duì)話框不再像前面的命令按鈕一樣從屬于主窗體對(duì)話框,而且它是新增的加的資源,因此必須為它創(chuàng)建一個(gè)新的類,否則系統(tǒng)不能識(shí)別和調(diào)用它們。通過(guò)建立“類向?qū)А辈藛雾?xiàng)創(chuàng)建一個(gè)新的類,并設(shè)計(jì)好新的類名。創(chuàng)建好新的類后必須對(duì)它們加以聲明,因?yàn)樵谫Y源互相調(diào)用時(shí),需要在它們之間進(jìn)行聲明,否則將不可識(shí)別。聲明過(guò)程如下:step1 在資源管理器中選擇fileview選項(xiàng)卡。圖3.2.1 類的聲明step2 雙擊“職工管理系統(tǒng)view.cpp”,即出現(xiàn)文件的開(kāi)頭部分,該部分用來(lái)對(duì)工程的類進(jìn)行聲明,增加新的聲明,如下所示:/ 職工管理系統(tǒng)view.cpp : implemen

8、tation of the cmyview class#include stdafx.h#include 職工管理系統(tǒng).h#include 職工管理系統(tǒng)set.h#include 職工管理系統(tǒng)doc.h#include 職工管理系統(tǒng)view.h#include mydlg1.h#include mydlg2.h#ifdef _debug#define new debug_new#undef this_filestatic char this_file = _file_;#endif這樣,在職工管理系統(tǒng)dlg.cpp中就聲明了三個(gè)新的類的頭文件。通過(guò)聲明程序,可以在以后新的類的引用加以識(shí)別。如果

9、不加以聲明,將會(huì)出現(xiàn)不明對(duì)象身份的信息提示。(3) 各個(gè)對(duì)話框設(shè)計(jì)完成以上的過(guò)程之后就可以對(duì)各個(gè)對(duì)話框進(jìn)行設(shè)計(jì)了。將其中的兩個(gè)對(duì)話框的名稱一個(gè)改為“職工信息瀏覽”,一個(gè)改為“職工工資瀏覽”。再為每一個(gè)對(duì)話框添加各種控件。在“職工管理系統(tǒng)主界面”中添加“職工信息瀏覽”、“職工工資瀏覽”、“職工基本信息編輯”個(gè)按鈕控件。在“職工信息瀏覽”、“職工工資瀏覽”界面上分別插入兩個(gè)active控件。插入過(guò)程如下:在active控件列表中選擇“microsoft ado date control,version6.0”選項(xiàng),確定即插入了一個(gè)adoc控件,如圖3.2.2: 圖3.2.2 插入adoc控件它是一

10、個(gè)數(shù)據(jù)源控件,專門用于為應(yīng)用系統(tǒng)創(chuàng)建數(shù)據(jù)庫(kù)環(huán)境,其作用與odbc數(shù)據(jù)源一樣,但在使用方法上有 一定的區(qū)別。同時(shí)數(shù)據(jù)環(huán)境一經(jīng)建立,adoc控件又可以作為一個(gè)數(shù)據(jù)導(dǎo)航控件,專門用于對(duì)數(shù)據(jù)環(huán)境中的數(shù)據(jù)記錄進(jìn)行瀏覽查詢。將控件的屬性設(shè)為:表3 adoc控件的基本屬性屬性屬性內(nèi)容ididc_adodc1標(biāo)題yes顯示數(shù)據(jù)瀏覽connectionstingdsn=職工管理數(shù)據(jù)庫(kù)recordsoure職工信息數(shù)據(jù)表再在activex控件列表中選擇“micosoft datagrid control,version6.0”選項(xiàng)插入一個(gè)“microsoft datagrid 6.0”表格控件,如圖3.2.3:圖

11、3.2.3 插入表格控件它是一表格的方式對(duì)數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行處理的控件。設(shè)置表格控件的屬性,如下表:表4 datagrid控件的基本屬性屬性屬性內(nèi)容ididc_datagrid1顯示yes標(biāo)題職工基本信息一覽表datasoureidc_adodc1allowaddnewtrueallowdeletetrueallowupdatatrue表5 分組框?qū)ο蟮幕緦傩詉d標(biāo)題內(nèi)容idc_staticgroup1記錄編輯區(qū)idc_staticgroup2記錄操作區(qū)為“職工基本信息編輯”界面放入控件并進(jìn)行屬性設(shè)置,屬性如以下的表:表6 命令按鈕對(duì)象的基本屬性id標(biāo)題內(nèi)容idc_buttonaddnew增

12、加內(nèi)容idc_buttondelete刪除內(nèi)容idc_buttonupdata刷新記錄idc_buttonfirst第一條idc_buttonnext下一條idc_buttonprev前一條idc_buttonlast最后一條idc_buttonliulan1職工基本信息一覽idc_buttonliulan2職工工資一覽 表7 標(biāo)簽對(duì)象的命令按鈕的基本屬性id標(biāo)題內(nèi)容idc_staticname職工姓名idc_staticnumber職工編號(hào)idc_staticsex性別idc_staticnialing年齡idc_staticjianli簡(jiǎn)歷idc_staticzhiwu職務(wù)idc_stat

13、iczhichen職稱idc_statictime工作時(shí)間idc_staticjibengongji基本工資idc_staticqitagongzi其他工資idc_staticyueshouru月收入idc_staticbumen所在部門表8 編輯框?qū)ο蟮幕緦傩詉d標(biāo)題內(nèi)容idc_editname職工姓名idc_editnumber職工編號(hào)idc_editsex性別idc_editnialing年齡idc_editjianli簡(jiǎn)歷idc_editzhiwu職務(wù)idc_editzhichen職稱idc_edittime工作時(shí)間idc_editjibengongji基本工資idc_editqit

14、agongzi其他工資idc_edityueshouru月收入idc_editbumen所在部門然后對(duì)編輯框進(jìn)行數(shù)據(jù)綁定,完成以上的操作后在為每一個(gè)命令按鈕編制過(guò)程代碼,各個(gè)按鈕的代碼如下:增加記錄代碼:void cmyview:onbuttonaddnew() / todo: add your control notification handler code herem_pset-addnew(); /指針調(diào)用addnew()函數(shù),錄入新數(shù)據(jù)updatedata(false); /顯示新信息刪除記錄代碼:void cmyview:onbuttondelete() / todo: add y

15、our control notification handler code herem_pset-delete(); m_pset-movenext();if(m_pset-iseof() /判斷是否已經(jīng)到達(dá)最首記錄m_pset-movelast(); /移向下一條記錄if(m_pset-isbof() /判斷是否已經(jīng)到達(dá)最末記錄m_pset-setfieldnull(null);updatedata(false);刷新記錄代碼:void cmyview:onbuttonupdate() / todo: add your control notification handler code he

16、reupdatedata(); /更新編輯框中內(nèi)容的編輯m_pset-update(); m_pset-requery(); /重新從表中獲取內(nèi)容m_pset-cancelupdate();第一條記錄代碼:void cmyview:onbuttonfirst() / todo: add your control notification handler code herem_pset-movefirst(); /移至首信息if(m_pset-isbof() /判斷是否已經(jīng)到達(dá)最首記錄messagebox(記錄已經(jīng)在第一條);m_pset-movenext(); /往后移一條updatedata

17、(false); return;updatedata(false); /顯示第一條的信息下一條記錄代碼:void cmyview:onbuttonnext() / todo: add your control notification handler code herem_pset-movenext(); /往后移一條if(m_pset-iseof() /判斷是否在最后一條messagebox(記錄已經(jīng)在最后一條!);m_pset-moveprev(); /往前移一條updatedata(false);return;updatedata(false); /顯示下一條信息前一條記錄代碼:void

18、 cmyview:onbuttonprev() / todo: add your control notification handler code herem_pset-moveprev(); /往前移一條if(m_pset-isbof() /判斷是否在最開(kāi)始messagebox(記錄已經(jīng)在第一條!);m_pset-movenext();updatedata(false);return;updatedata(false); /顯示上一條信息最后一條記錄代碼:void cmyview:onbuttonlast() / todo: add your control notification ha

19、ndler code herem_pset-movelast(); / m_pset移至最后if(m_pset-iseof() /判斷是否已經(jīng)到達(dá)最首記錄messagebox(記錄已經(jīng)在最后一條!);m_pset-moveprev(); /移向前一條updatedata(false);return;updatedata(false); /顯示最后一條信息(4) 各對(duì)話框之間的切換要從“職工信息編輯界面”到“職工信息瀏覽”界面,先要在“職工管理系統(tǒng)主界面”的對(duì)話框中聲明對(duì)話框“職工信息瀏覽”,其聲明如下:#include stdafx.h#include 職工管理系統(tǒng).h#include 職工管

20、理系統(tǒng)set.h#include 職工管理系統(tǒng)doc.h#include 職工管理系統(tǒng)view.h#include mydlg1.h#include mydlg2.h再在主界面上添加的命令按鈕“職工信息瀏覽”,通過(guò)“建立類向?qū)А睂?duì)按鈕添加函數(shù),函數(shù)代碼如下:void cmyview:onbuttonliulan() / todo: add your control notification handler code heremydlg1 mydlg1; /創(chuàng)建mydlg1的對(duì)象mydlg1mydlg1.domodal(); /通過(guò)對(duì)象mydlg1調(diào)用domodal()函數(shù)void cmyvie

21、w:onbuttonliulan2() / todo: add your control notification handler code heremydlg2 mydlg2;mydlg2.domodal();其它的界面互換方法一樣。4 系統(tǒng)運(yùn)行報(bào)告4.1 系統(tǒng)運(yùn)行的主界面程序的各個(gè)部分運(yùn)行沒(méi)有錯(cuò)誤后,進(jìn)行總體組建,編譯后運(yùn)行出現(xiàn)系統(tǒng)的主界面,如下圖所示:4.2 職工基本信息運(yùn)行界面 單擊主界面中的“職工信息全部瀏覽”按鈕,出現(xiàn)下面的界面:4.3 職工工資信息運(yùn)行界面單擊主界面的“職工工資全部瀏覽”按鈕,出現(xiàn)如下界面:5 設(shè)計(jì)中的不足 (1) 對(duì)vc+中的不熟悉,和不能熟練地運(yùn)用mfc這個(gè)軟

22、件開(kāi)發(fā)工具所以系統(tǒng)的界面比較簡(jiǎn)單,不夠美觀。(2)還有就是由于對(duì)mfc中的很多類不是很熟悉,不能夠熟練運(yùn)用使得系統(tǒng)很多地方都不是很完善,比如有些程序比較繁冗,不利于維護(hù)與修改。(3) 該系統(tǒng)的功能比較簡(jiǎn)單,靈活性不高,還有許多需要改進(jìn)的地方。6 總結(jié)通過(guò)這次軟件設(shè)計(jì)學(xué)到了很多東西.上學(xué)期開(kāi)設(shè)了vc+課程,由于是我們首次接觸面向?qū)ο蟮母拍?所以在學(xué)習(xí)vc+的過(guò)程當(dāng)中,很多時(shí)間都用在學(xué)習(xí)vc+中的一些基本語(yǔ)法以及面向?qū)ο蟮木幊趟枷肷厦?真正自己實(shí)踐的部分比較少。很感謝這次學(xué)校給我們提供一個(gè)平臺(tái),讓我們有一次自己動(dòng)手實(shí)踐的機(jī)會(huì)。另外對(duì)c+語(yǔ)言有更深的理解,能夠解決該語(yǔ)言的基本錯(cuò)誤能夠進(jìn)行判別和修改。

23、對(duì)c+語(yǔ)言懂得了基本的應(yīng)用方法,知道了學(xué)習(xí)c+語(yǔ)言的關(guān)鍵是要掌握程序設(shè)計(jì)的核心-算法和數(shù)據(jù)結(jié)構(gòu)。還有通過(guò)自學(xué)掌握了用mfc開(kāi)發(fā)軟件的基本方法與過(guò)程,也了解與熟悉了數(shù)據(jù)庫(kù)的一些基本知識(shí)并能夠運(yùn)用mirosoft access 2003創(chuàng)建一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)。并通過(guò)實(shí)際操作了解了軟件開(kāi)發(fā)的基本流程。同時(shí),通過(guò)這次設(shè)計(jì)也認(rèn)識(shí)到自己的知識(shí)的貧乏。很多東西僅僅學(xué)到了一些皮毛,這是遠(yuǎn)遠(yuǎn)不夠的。這需用要以后不斷加強(qiáng)自己的自學(xué)能力,通過(guò)多學(xué)習(xí)課程以外的專業(yè)知識(shí)來(lái)充實(shí)自己。 總之,通過(guò)這次面向?qū)ο笳n程設(shè)計(jì),改變了自己的一些觀念,發(fā)現(xiàn)了很多問(wèn)題,并且在發(fā)現(xiàn)問(wèn)題和解決問(wèn)題的過(guò)程當(dāng)中學(xué)習(xí)到了很多東西。參考書(shū)目1 伍俊良

24、, visusl c+ 課程設(shè)計(jì)與系統(tǒng)開(kāi)發(fā)案例, 清華大學(xué)出版社, 2002.11.2 劉振安等編, c+ 課程設(shè)計(jì)機(jī)械工業(yè)出版社, 2004.8. 3 王正軍等編, visusl c+ 6.0程序設(shè)計(jì)從入門到精髓, 人民郵電出版社, 2005.11. 部分程序清單:/ 職工管理系統(tǒng)set.cpp : implementation of the cmyset class/#include stdafx.h#include 職工管理系統(tǒng).h#include 職工管理系統(tǒng)set.h#ifdef _debug#define new debug_new#undef this_filestatic ch

25、ar this_file = _file_;#endif/ cmyset implementationimplement_dynamic(cmyset, crecordset)cmyset:cmyset(cdatabase* pdb): crecordset(pdb)/afx_field_init(cmyset)m_jibengongzi = 0.0f;m_jianli = _t();m_qitagongzi = 0.0f;m_bumen = _t();m_shouru = 0.0f;m_zhichen = _t();m_number = 0;m_name = _t();m_nianlin =

26、 0;m_number1 = 0;m_name1 = _t();m_zhiwu = _t();m_sex = _t();m_nfields = 14;/afx_field_initm_ndefaulttype = snapshot;cstring cmyset:getdefaultconnect()return _t(odbc;dsn=職工管理數(shù)據(jù)庫(kù));cstring cmyset:getdefaultsql()return _t(職工工資數(shù)據(jù)表,職工信息數(shù)據(jù)表);void cmyset:dofieldexchange(cfieldexchange* pfx)/afx_field_map(cm

27、yset)pfx-setfieldtype(cfieldexchange:outputcolumn);rfx_single(pfx, _t(基本工資), m_jibengongzi);rfx_text(pfx, _t(簡(jiǎn)歷), m_jianli);rfx_single(pfx, _t(其他工資), m_qitagongzi);rfx_text(pfx, _t(所在部門), m_bumen);rfx_single(pfx, _t(月收入), m_shouru);rfx_text(pfx, _t(職稱), m_zhichen);rfx_long(pfx, _t(職工工資數(shù)據(jù)表.職工編號(hào)), m_n

28、umber);rfx_text(pfx, _t(職工工資數(shù)據(jù)表.職工姓名), m_name);rfx_int(pfx, _t(職工年齡), m_nianlin);rfx_long(pfx, _t(職工信息數(shù)據(jù)表.職工編號(hào)), m_number1);rfx_text(pfx, _t(職工信息數(shù)據(jù)表.職工姓名), m_name1);rfx_text(pfx, _t(職務(wù)), m_zhiwu);rfx_text(pfx, _t(職工性別), m_sex);rfx_date(pfx, _t(工作時(shí)間), m_shijian);/afx_field_map/ cmyset diagnostics#ifd

29、ef _debugvoid cmyset:assertvalid() constcrecordset:assertvalid();void cmyset:dump(cdumpcontext& dc) constcrecordset:dump(dc);#endif /_debug/ 職工管理系統(tǒng).cpp : defines the class behaviors for the application./#include stdafx.h#include 職工管理系統(tǒng).h#include mainfrm.h#include 職工管理系統(tǒng)set.h#include 職工管理系統(tǒng)doc.h#incl

30、ude 職工管理系統(tǒng)view.h#ifdef _debug#define new debug_new#undef this_filestatic char this_file = _file_;#endif/ cmyappbegin_message_map(cmyapp, cwinapp)/afx_msg_map(cmyapp)on_command(id_app_about, onappabout)/ note - the classwizard will add and remove mapping macros here./ do not edit what you see in thes

31、e blocks of generated code!/afx_msg_map/ standard print setup commandon_command(id_file_print_setup, cwinapp:onfileprintsetup)end_message_map()/ cmyapp constructioncmyapp:cmyapp()/ todo: add construction code here,/ place all significant initialization in initinstance/ the one and only cmyapp object

32、cmyapp theapp;/ cmyapp initializationbool cmyapp:initinstance()afxenablecontrolcontainer();/ standard initialization/ if you are not using these features and wish to reduce the size/ of your final executable, you should remove from the following/ the specific initialization routines you do not need.

33、#ifdef _afxdllenable3dcontrols();/ call this when using mfc in a shared dll#elseenable3dcontrolsstatic();/ call this when linking to mfc statically#endif/ change the registry key under which our settings are stored./ todo: you should modify this string to be something appropriate/ such as the name o

34、f your company or organization.setregistrykey(_t(local appwizard-generated applications);loadstdprofilesettings(); / load standard ini file options (including mru)/ register the applications document templates. document templates/ serve as the connection between documents, frame windows and views.cs

35、ingledoctemplate* pdoctemplate;pdoctemplate = new csingledoctemplate(idr_mainframe,runtime_class(cmydoc),runtime_class(cmainframe), / main sdi frame windowruntime_class(cmyview);adddoctemplate(pdoctemplate);/ parse command line for standard shell commands, dde, file openccommandlineinfo cmdinfo;pars

36、ecommandline(cmdinfo);/ dispatch commands specified on the command lineif (!processshellcommand(cmdinfo)return false;/ the one and only window has been initialized, so show and update it.m_pmainwnd-showwindow(sw_show);m_pmainwnd-updatewindow();return true;/ caboutdlg dialog used for app aboutclass c

37、aboutdlg : public cdialogpublic:caboutdlg();/ dialog data/afx_data(caboutdlg)enum idd = idd_aboutbox ;/afx_data/ classwizard generated virtual function overrides/afx_virtual(caboutdlg)protected:virtual void dodataexchange(cdataexchange* pdx); / ddx/ddv support/afx_virtual/ implementationprotected:/a

38、fx_msg(caboutdlg)/ no message handlers/afx_msgdeclare_message_map();caboutdlg:caboutdlg() : cdialog(caboutdlg:idd)/afx_data_init(caboutdlg)/afx_data_initvoid caboutdlg:dodataexchange(cdataexchange* pdx)cdialog:dodataexchange(pdx);/afx_data_map(caboutdlg)/afx_data_mapbegin_message_map(caboutdlg, cdia

39、log)/afx_msg_map(caboutdlg)/ no message handlers/afx_msg_mapend_message_map()/ app command to run the dialogvoid cmyapp:onappabout()caboutdlg aboutdlg;aboutdlg.domodal();/ cmyapp message handlers/ 職工管理系統(tǒng).cpp : defines the class behaviors for the application./#include stdafx.h#include 職工管理系統(tǒng).h#includ

40、e mainfrm.h#include 職工管理系統(tǒng)set.h#include 職工管理系統(tǒng)doc.h#include 職工管理系統(tǒng)view.h#ifdef _debug#define new debug_new#undef this_filestatic char this_file = _file_;#endif/ cmyappbegin_message_map(cmyapp, cwinapp)/afx_msg_map(cmyapp)on_command(id_app_about, onappabout)/ note - the classwizard will add and remov

41、e mapping macros here./ do not edit what you see in these blocks of generated code!/afx_msg_map/ standard print setup commandon_command(id_file_print_setup, cwinapp:onfileprintsetup)end_message_map()/ cmyapp constructioncmyapp:cmyapp()/ todo: add construction code here,/ place all significant initia

42、lization in initinstance/ the one and only cmyapp objectcmyapp theapp;/ cmyapp initializationbool cmyapp:initinstance()afxenablecontrolcontainer();/ standard initialization/ if you are not using these features and wish to reduce the size/ of your final executable, you should remove from the followin

43、g/ the specific initialization routines you do not need.#ifdef _afxdllenable3dcontrols();/ call this when using mfc in a shared dll#elseenable3dcontrolsstatic();/ call this when linking to mfc statically#endif/ change the registry key under which our settings are stored./ todo: you should modify thi

44、s string to be something appropriate/ such as the name of your company or organization.setregistrykey(_t(local appwizard-generated applications);loadstdprofilesettings(); / load standard ini file options (including mru)/ register the applications document templates. document templates/ serve as the

45、connection between documents, frame windows and views.csingledoctemplate* pdoctemplate;pdoctemplate = new csingledoctemplate(idr_mainframe,runtime_class(cmydoc),runtime_class(cmainframe), / main sdi frame windowruntime_class(cmyview);adddoctemplate(pdoctemplate);/ parse command line for standard she

46、ll commands, dde, file openccommandlineinfo cmdinfo;parsecommandline(cmdinfo);/ dispatch commands specified on the command lineif (!processshellcommand(cmdinfo)return false;/ the one and only window has been initialized, so show and update it.m_pmainwnd-showwindow(sw_show);m_pmainwnd-updatewindow();return true;/ caboutdlg dialog used for app aboutclass caboutdlg : public cdialogpublic:caboutdlg();/ dialog data/afx_data(caboutdlg)enu

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論