版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告書</b></p><p> 題 目: 職工信息管理系統(tǒng)課程設(shè)計(jì)</p><p> 院部 : 信息科學(xué)與電氣工程學(xué)院 </p><p> 專 業(yè): 計(jì)算機(jī)技術(shù)與科學(xué) </p><p> 班
2、 級(jí) 計(jì)算122 </p><p> 姓 名: </p><p> 學(xué) 號(hào): </p><p> 10月 7 日 至 10 月 18 日 共 2 周</p><p> 指導(dǎo)教師(簽字):
3、 </p><p> 系 主 任(簽字): </p><p> 年 月 日</p><p><b> 課程設(shè)計(jì)任務(wù)書</b></p><p><b> 成 績(jī) 評(píng) 定 表</b></
4、p><p><b> 摘要</b></p><p> 課程設(shè)計(jì)是我們?cè)趯W(xué)習(xí)和掌握所學(xué)知識(shí)的基礎(chǔ)上結(jié)合實(shí)際應(yīng)用而進(jìn)行的一次綜合分析設(shè)計(jì)能力的訓(xùn)練。為了提高我們的實(shí)踐能力、創(chuàng)造力和解決實(shí)際問題的能力,進(jìn)一步認(rèn)識(shí)到實(shí)踐對(duì)于學(xué)習(xí)的重要性,學(xué)校安排我們進(jìn)行了為期兩周的面向?qū)ο笳n程設(shè)計(jì)。</p><p> 職工信息管理系統(tǒng)程序的功能是,根據(jù)職工信息表,建
5、立只含有姓名和年齡的職工信息簡(jiǎn)表;可以通過不同的方式對(duì)建立的信息表中的職工信息進(jìn)行添加、刪除、修改等,并顯示信息;可以實(shí)現(xiàn)按不同類別輸出職工信息等功能。</p><p> 通過這次課程設(shè)計(jì),使我們更加熟悉的掌握了Visual C++語(yǔ)言的運(yùn)用。幫助我們熟悉了更多Visual C++語(yǔ)言的功能,提高了我們的動(dòng)手能力,學(xué)到了許多解決實(shí)際問題的寶貴經(jīng)驗(yàn).同時(shí)也挖掘出了我們潛在的能力,使我們對(duì)自己更有自信,對(duì)編程也更有
6、興趣。我相信,只要努力、勤奮、堅(jiān)持不懈,就沒有什么做不到的事,不能還沒開始就退縮,要勇于拼搏,敢于創(chuàng)新。</p><p><b> 目 錄</b></p><p><b> 1課程設(shè)計(jì)概述5</b></p><p> 1.1開發(fā)環(huán)境概述5</p><p> 2職工信息管理系統(tǒng)軟件總體設(shè)
7、計(jì)5</p><p> 2.1職工信息管理系統(tǒng)軟件總體設(shè)計(jì)思想5</p><p> 2.2總體設(shè)計(jì)流程圖6</p><p> 2.3 需求分析..........................................................6</p><p> 3職工信息管理系統(tǒng)程序源代碼.......
8、........................6</p><p> 4程序測(cè)試................................................23</p><p> 4.1 主菜單界面.......................................................23</p><p> 4.2
9、 添加職工信息界面.................................................24</p><p> 4.3 完成添加職工信息界面.............................................24</p><p> 4.4 排序職工信息界面...................................
10、.............25</p><p> 4.5 查詢職工信息界面.................................................25</p><p> 4.6 刪除職工信息界面.................................................27</p><p> 5設(shè)計(jì)體會(huì)及
11、今后的改進(jìn)意見................................28</p><p> 6參考文獻(xiàn)................................................29</p><p><b> 1 課程設(shè)計(jì)概述</b></p><p><b> 1.1開發(fā)環(huán)境概述</b>
12、</p><p> Visual C++是微軟公司的重要產(chǎn)品之一, 是一種功能強(qiáng)大行之有效的可視化編程工具。它提供了MFC類庫(kù),使用戶可以方便的開發(fā)自己想實(shí)現(xiàn)的功能。Visual C++6.0的主要特點(diǎn):</p><p> ?。?)自動(dòng)化和宏功能。</p><p> ?。?)可以靈活地定制工具欄和菜單。</p><p> ?。?)可以直接運(yùn)
13、行和調(diào)試程序,還可以使用宏語(yǔ)言來自動(dòng)操作調(diào)試器。</p><p> ?。?)支持Internet連接。</p><p> ?。?)一個(gè)新的便捷的項(xiàng)目系統(tǒng)可以允許一個(gè)工作區(qū)內(nèi)包含多個(gè)不同的項(xiàng)目類型。</p><p> ?。?)在工作區(qū)內(nèi)可以包含多個(gè)并列的工程文件。</p><p> ?。?)可以在對(duì)話框中使用WizardBar將程序同可視化元素
14、聯(lián)系起來。</p><p> (8)Find in File命令支持兩個(gè)獨(dú)立的輸出窗格,可以保存上一次搜索的結(jié)果。</p><p> 這些新特性可以更好地利用Visual C++開發(fā)工具進(jìn)行Windows應(yīng)用程序開發(fā)。</p><p> 2職工信息管理系統(tǒng)軟件總體設(shè)計(jì)</p><p> 2.1職工信息管理系統(tǒng)軟件總體設(shè)計(jì)思想</
15、p><p> 職工信息系統(tǒng)的功能為實(shí)現(xiàn)輸入數(shù)據(jù)的存儲(chǔ)與讀取,同時(shí)可添加,刪除,查詢,排序工人信息。</p><p> 職工信息系統(tǒng)的功能模塊有:</p><p> ?。?)提供菜單界面,方便用戶對(duì)程序功能進(jìn)行選擇。</p><p> ?。?)接受用戶輸入的一組數(shù)據(jù),例如姓名,年齡,工號(hào),性別,工種等</p><p>
16、?。?)除了添加數(shù)據(jù)之外,還可以進(jìn)行刪除、查詢、添加、排序等操作。</p><p> 程序分為多個(gè)小模塊,通過調(diào)用實(shí)現(xiàn)各種功能,增強(qiáng)了程序的可建設(shè)性。</p><p><b> 2.2總體設(shè)計(jì)流程</b></p><p><b> 2.3 需求分析</b></p><p> 職工信息系統(tǒng)是一
17、個(gè)工作單位必不可缺少的管理工具,它的管理數(shù)據(jù)對(duì)于公司的決策者和管理者都是至關(guān)重要的,所以職工信息管理系統(tǒng)可以成為為用戶提供充足的信息和快捷的查明迅手段,傳統(tǒng)的人工方式管理信息,這種方式有很多缺點(diǎn):效率低、保密性差。時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù)。這樣,對(duì)于信息的查找、更新和維護(hù)都帶來了不少的困難。當(dāng)今社會(huì),傳統(tǒng)的方式已經(jīng)不能滿足公司的需求。</p><p> 隨著計(jì)算機(jī)技術(shù)的不斷提高,計(jì)算機(jī)作為知識(shí)經(jīng)濟(jì)時(shí)代的
18、產(chǎn)物,它已經(jīng)進(jìn)入人類社會(huì)的各個(gè)行業(yè)和領(lǐng)域,并發(fā)揮著越來越重要的作用。使用計(jì)算機(jī)對(duì)職工信息進(jìn)行管理具有:檢索迅速、查找方便、可靠性高、儲(chǔ)存量大、保密性高、壽命長(zhǎng)、成本低等特點(diǎn)。這些優(yōu)點(diǎn)能夠極大的提高職工管理的效率,這也是公司的科學(xué)化、正規(guī)化管理和與世界接軌的重要條件。</p><p> 計(jì)算機(jī)職工信息管理系統(tǒng)能提供以下功能</p><p> ?、?添加職工信息并保存</p>
19、<p><b> ?、?查詢職工信息</b></p><p> ③ 瀏覽所有職工信息</p><p><b> ?、?刪除職工信息</b></p><p> ⑤將所有職工信息按照工號(hào)排序</p><p> 3 職工信息管理系統(tǒng)程序源代碼</p><p> /
20、/ 職工信息系統(tǒng)升級(jí)版Dlg.cpp : implementation file</p><p> //#include "stdafx.h"</p><p> #include "職工信息系統(tǒng)升級(jí)版.h"</p><p> #include "職工信息系統(tǒng)升級(jí)版Dlg.h"</p>&
21、lt;p> #include<fstream.h></p><p> #include<malloc.h></p><p> #ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILE</p><p> static char THIS_FILE[] = __FILE__;#endif&
22、lt;/p><p> /////////////////////////////////////////////////////////////////////////////</p><p> // CAboutDlg dialog used for App About</p><p> class CAboutDlg : public CDialog</
23、p><p><b> {</b></p><p><b> public:</b></p><p> CAboutDlg();</p><p> // Dialog Data</p><p> //{{AFX_DATA(CAboutDlg)</p><
24、;p> enum { IDD = IDD_ABOUTBOX };</p><p> //}}AFX_DATA</p><p> // ClassWizard generated virtual function overrides</p><p> //{{AFX_VIRTUAL(CAboutDlg)</p><p> pro
25、tected:</p><p> virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support</p><p> //}}AFX_VIRTUAL</p><p> // Implementation</p><p> protected:</p>
26、;<p> //{{AFX_MSG(CAboutDlg)</p><p> //}}AFX_MSG</p><p> DECLARE_MESSAGE_MAP()</p><p><b> };</b></p><p> CAboutDlg::CAboutDlg() : CDialog(CAbout
27、Dlg::IDD)</p><p><b> {</b></p><p> //{{AFX_DATA_INIT(CAboutDlg)</p><p> //}}AFX_DATA_INIT</p><p><b> }</b></p><p> void CAbout
28、Dlg::DoDataExchange(CDataExchange* pDX)</p><p><b> {</b></p><p> CDialog::DoDataExchange(pDX);</p><p> //{{AFX_DATA_MAP(CAboutDlg)</p><p> //}}AFX_DATA_
29、MAP</p><p><b> }</b></p><p> BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)</p><p> //{{AFX_MSG_MAP(CAboutDlg)</p><p> // No message handlers</p><p>
30、; //}}AFX_MSG_MAP</p><p> END_MESSAGE_MAP()</p><p> /////////////////////////////////////////////////////////////////////////////</p><p> // CMyDlg dialog</p><p>
31、CMyDlg::CMyDlg(CWnd* pParent /*=NULL*/)</p><p> : CDialog(CMyDlg::IDD, pParent)</p><p><b> {</b></p><p> //{{AFX_DATA_INIT(CMyDlg)</p><p> m_Sex = -1;&l
32、t;/p><p> m_age = _T("");</p><p> m_id = _T("");</p><p> m_name = _T("");</p><p> m_Show = _T("");</p><p> m_Kind
33、 = -1;</p><p> //}}AFX_DATA_INIT</p><p> // Note that LoadIcon does not require a subsequent DestroyIcon in Win32</p><p> m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);</p
34、><p><b> }</b></p><p> void CMyDlg::DoDataExchange(CDataExchange* pDX)</p><p><b> {</b></p><p> CDialog::DoDataExchange(pDX);</p><p&
35、gt; //{{AFX_DATA_MAP(CMyDlg)</p><p> DDX_Control(pDX, IDC_EDIT_NAME, m_NAME);</p><p> DDX_Control(pDX, IDC_EDIT_ID, m_ID);</p><p> DDX_Control(pDX, IDC_EDIT_AGE, m_AGE);</p&g
36、t;<p> DDX_Control(pDX, IDC_LIST, m_ListControl);</p><p> DDX_Radio(pDX, IDC_RADIO_M, m_Sex);</p><p> DDX_Text(pDX, IDC_EDIT_AGE, m_age);</p><p> DDX_Text(pDX, IDC_EDIT_I
37、D, m_id);</p><p> DDX_Text(pDX, IDC_EDIT_NAME, m_name);</p><p> DDX_Radio(pDX, IDC_RADIO_GY, m_Kind);</p><p> //}}AFX_DATA_MAP</p><p><b> }</b></p>
38、;<p> BEGIN_MESSAGE_MAP(CMyDlg, CDialog)</p><p> //{{AFX_MSG_MAP(CMyDlg)</p><p> ON_WM_SYSCOMMAND()</p><p> ON_WM_PAINT()</p><p> ON_WM_QUERYDRAGICON()</
39、p><p> ON_BN_CLICKED(IDC_BUTTON_ADD, OnAdd)</p><p> ON_BN_CLICKED(IDC_BUTTON_DELETE, OnDelete)</p><p> ON_BN_CLICKED(IDC_BUTTON_SEARCH, OnSearch)</p><p> ON_BN_CLICKED
40、(IDC_RADIO_M, OnRadioM)</p><p> ON_BN_CLICKED(IDC_BUTTON_SORT, OnSort)</p><p> ON_BN_CLICKED(IDC_RADIO_GY, OnRadioGy)</p><p> //}}AFX_MSG_MAP</p><p> END_MESSAGE_MA
41、P()</p><p> /////////////////////////////////////////////////////////////////////////////</p><p> // CMyDlg message handlers</p><p> BOOL CMyDlg::OnInitDialog()</p><p&
42、gt;<b> {</b></p><p> CDialog::OnInitDialog();</p><p> // Add "About..." menu item to system menu.</p><p> // IDM_ABOUTBOX must be in the system command ran
43、ge.</p><p> ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);</p><p> ASSERT(IDM_ABOUTBOX < 0xF000);</p><p> CMenu* pSysMenu = GetSystemMenu(FALSE);</p><p> i
44、f (pSysMenu != NULL)</p><p><b> {</b></p><p> CString strAboutMenu;</p><p> strAboutMenu.LoadString(IDS_ABOUTBOX);</p><p> if (!strAboutMenu.IsEmpty())&
45、lt;/p><p><b> {</b></p><p> pSysMenu->AppendMenu(MF_SEPARATOR);</p><p> pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);</p><p><b>
46、 }</b></p><p><b> }</b></p><p> // Set the icon for this dialog. The framework does this automatically</p><p> // when the application's main window is no
47、t a dialog</p><p> SetIcon(m_hIcon, TRUE);// Set big icon</p><p> SetIcon(m_hIcon, FALSE);// Set small icon</p><p> // TODO: Add extra initialization here</p><p&g
48、t; m_ListControl.InsertColumn(0,"工號(hào)",LVCFMT_LEFT,100);</p><p> m_ListControl.InsertColumn(1,"姓名",LVCFMT_LEFT,80);</p><p> m_ListControl.InsertColumn(2,"性別",LVCFM
49、T_LEFT,40);</p><p> m_ListControl.InsertColumn(3,"年齡",LVCFMT_LEFT,40);</p><p> m_ListControl.InsertColumn(4,"工種",LVCFMT_LEFT,80);</p><p> return TRUE; // ret
50、urn TRUE unless you set the focus to a control</p><p><b> }</b></p><p> void CMyDlg::OnSysCommand(UINT nID, LPARAM lParam)</p><p><b> {</b></p>&l
51、t;p> if ((nID & 0xFFF0) == IDM_ABOUTBOX)</p><p><b> {</b></p><p> CAboutDlg dlgAbout;</p><p> dlgAbout.DoModal();</p><p><b> }</b>&l
52、t;/p><p><b> else</b></p><p><b> {</b></p><p> CDialog::OnSysCommand(nID, lParam);</p><p><b> }</b></p><p><b>
53、}</b></p><p> // If you add a minimize button to your dialog, you will need the code below</p><p> // to draw the icon. For MFC applications using the document/view model,</p>&
54、lt;p> // this is automatically done for you by the framework.</p><p> void CMyDlg::OnPaint() </p><p><b> {</b></p><p> if (IsIconic())</p><p><b&
55、gt; {</b></p><p> CPaintDC dc(this); // device context for painting</p><p> SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);</p><p> // Center icon in client r
56、ectangle</p><p> int cxIcon = GetSystemMetrics(SM_CXICON);</p><p> int cyIcon = GetSystemMetrics(SM_CYICON);</p><p> CRect rect;</p><p> GetClientRect(&rect);&l
57、t;/p><p> int x = (rect.Width() - cxIcon + 1) / 2;</p><p> int y = (rect.Height() - cyIcon + 1) / 2;</p><p> // Draw the icon</p><p> dc.DrawIcon(x, y, m_hIcon);</p
58、><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> CDialog::OnPaint();</p><p><b> }</b></p>
59、;<p><b> }</b></p><p> // The system calls this to obtain the cursor to display while the user drags</p><p> // the minimized window.</p><p> HCURSOR CMyDlg:
60、:OnQueryDragIcon()</p><p><b> {</b></p><p> return (HCURSOR) m_hIcon;</p><p><b> }</b></p><p> void CMyDlg::OnAdd() </p><p><
61、;b> {</b></p><p> // TODO: Add your control notification handler code here</p><p> UpdateData(TRUE);</p><p> m_ID.GetWindowText(m_id);</p><p> m_ListContr
62、ol.InsertItem(0,m_id);</p><p> m_NAME.GetWindowText(m_name);</p><p> m_ListControl.SetItemText(0,1,m_name);</p><p> m_AGE.GetWindowText(m_age);</p><p> m_ListContro
63、l.SetItemText(0,3,m_age);</p><p> UpdateData(TRUE);</p><p> if(m_Sex==0)</p><p> m_ListControl.SetItemText(0,2,"男");</p><p> else if(m_Sex==1)</p>
64、<p> m_ListControl.SetItemText(0,2,"女");</p><p> UpdateData(TRUE);</p><p> if(m_Kind==0)</p><p> m_ListControl.SetItemText(0,4,"雇員類");</p><p&
65、gt; else if(m_Kind==1)</p><p> m_ListControl.SetItemText(0,4,"教師類");</p><p> else if(m_Kind==2)</p><p> m_ListControl.SetItemText(0,4,"工人類");</p><
66、p> UpdateData(TRUE);</p><p><b> m_id="";</b></p><p> m_name="";</p><p><b> m_Sex=-1;</b></p><p><b> m_age=&quo
67、t;";</b></p><p> m_Kind=-1;</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CMyDlg::OnDelete() </p><p><b> {<
68、/b></p><p> // TODO: Add your control notification handler code here</p><p> UpdateData(TRUE);</p><p> int i=0,num=0,idx;</p><p> while(m_ListControl.GetItemText
69、(i,0)!="")</p><p><b> {</b></p><p><b> i++;</b></p><p><b> num++;</b></p><p><b> }</b></p><p>
70、; m_ID.GetWindowText(m_id);</p><p> for(i=0;i<num;i++)</p><p><b> {</b></p><p> if(m_id==m_ListControl.GetItemText(i,0))</p><p><b> {</b>
71、;</p><p> m_ListControl.DeleteItem(i);</p><p><b> break; </b></p><p><b> }</b></p><p><b> }</b></p><p> UpdateDa
72、ta(TRUE);</p><p><b> m_id="";</b></p><p> UpdateData(FALSE);</p><p> idx=m_ListControl.GetSelectionMark();</p><p> m_ListControl.DeleteItem(id
73、x);</p><p> UpdateData(TRUE);</p><p><b> }</b></p><p> void CMyDlg::OnSearch() </p><p><b> {</b></p><p> // TODO: Add your con
74、trol notification handler code here</p><p> int i=0,num=0,k=0;</p><p> CString str;</p><p> while(m_ListControl.GetItemText(i,0)!="")</p><p><b> {&l
75、t;/b></p><p><b> i++;</b></p><p><b> num++;</b></p><p><b> }</b></p><p> for(i=0;i<num;i++)</p><p><b>
76、 {</b></p><p> m_ID.GetWindowText(m_id);</p><p> if(m_ListControl.GetItemText(i,0)==m_id)</p><p><b> {</b></p><p> m_ListControl.SetItemState(i,LV
77、IS_SELECTED, LVIS_SELECTED);</p><p> str="工號(hào):"+m_ListControl.GetItemText(i,0)+"\n"+"姓名:"+m_ListControl.GetItemText(i,1)+"\n"+"性別:"+m_ListControl.GetItemText
78、(i,2)+"\n"+"年齡:"+m_ListControl.GetItemText(i,3)+"\n"+"工種:"+m_ListControl.GetItemText(i,4);</p><p> MessageBox(str);</p><p><b> break;</b><
79、;/p><p><b> }</b></p><p><b> else k++;</b></p><p><b> }</b></p><p> if(k==num)</p><p> MessageBox("該職工不存在!"
80、);</p><p> UpdateData(TRUE);</p><p><b> m_id="";</b></p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> void CMyDlg
81、::OnRadioM() </p><p><b> {</b></p><p> // TODO: Add your control notification handler code here</p><p><b> }</b></p><p> void CMyDlg::OnSort
82、() </p><p><b> {</b></p><p> // TODO: Add your control notification handler code here</p><p> CString StrText1,StrText2;</p><p> int num,i,flag,j;</p
83、><p> int id1,id2;</p><p><b> num=0;</b></p><p><b> i=0;</b></p><p> while(m_ListControl.GetItemText(i,0)!="")</p><p>&l
84、t;b> {</b></p><p><b> num++;</b></p><p><b> i++;</b></p><p><b> }</b></p><p> struct Item ListItem[100];</p>&l
85、t;p> for(i=0;i<num;i++)</p><p><b> {</b></p><p> ListItem[i].StrID=m_ListControl.GetItemText(i,0);</p><p> ListItem[i].StrName=m_ListControl.GetItemText(i,1);&
86、lt;/p><p> ListItem[i].StrSex=m_ListControl.GetItemText(i,2);</p><p> ListItem[i].StrAge=m_ListControl.GetItemText(i,3);</p><p> ListItem[i].StrKind=m_ListControl.GetItemText(i,4);&
87、lt;/p><p><b> }</b></p><p> for(i=num-1;i>=0;i--)</p><p><b> {</b></p><p> UpdateData(TRUE);</p><p> m_ListControl.DeleteItem(
88、i);</p><p> UpdateData(FALSE);</p><p><b> }</b></p><p> for(i=0;i<num-1;i++)</p><p><b> {</b></p><p><b> flag=1;</
89、b></p><p> for(j=0;j<num-i-1;j++)</p><p><b> {</b></p><p> StrText1=ListItem[j].StrID;</p><p> id1=_tcstoul(StrText1,NULL,10);</p><p>
90、; StrText2=ListItem[j+1].StrID;</p><p> id2=_tcstoul(StrText2,NULL,10);</p><p> if(id1<id2)</p><p><b> {</b></p><p> struct Item TempItem;</p>
91、<p> TempItem.StrID=ListItem[j].StrID;</p><p> TempItem.StrName=ListItem[j].StrName;</p><p> TempItem.StrSex=ListItem[j].StrSex;</p><p> TempItem.StrAge=ListItem[j].StrAg
92、e;</p><p> TempItem.StrKind=ListItem[j].StrKind;</p><p> ListItem[j].StrID=ListItem[j+1].StrID;</p><p> ListItem[j].StrName=ListItem[j+1].StrName;</p><p> ListItem[
93、j].StrSex=ListItem[j+1].StrSex;</p><p> ListItem[j].StrAge=ListItem[j+1].StrAge;</p><p> ListItem[j].StrKind=ListItem[j+1].StrKind;</p><p> ListItem[j+1].StrID=TempItem.StrID;<
94、;/p><p> ListItem[j+1].StrName=TempItem.StrName;</p><p> ListItem[j+1].StrSex=TempItem.StrSex;</p><p> ListItem[j+1].StrAge=TempItem.StrAge;</p><p> ListItem[j+1].StrK
95、ind=TempItem.StrKind;</p><p><b> flag=0;</b></p><p><b> }</b></p><p><b> }</b></p><p> if(flag==1)</p><p><b>
96、 Break;</b></p><p><b> }</b></p><p> for(i=0;i<num;i++)</p><p><b> {</b></p><p> m_ListControl.InsertItem(0,ListItem[i].StrID);<
97、;/p><p> m_ListControl.SetItemText(0,1,ListItem[i].StrName);</p><p> m_ListControl.SetItemText(0,2,ListItem[i].StrSex);</p><p> m_ListControl.SetItemText(0,3,ListItem[i].StrAge);<
98、;/p><p> m_ListControl.SetItemText(0,4,ListItem[i].StrKind);</p><p><b> }</b></p><p><b> }</b></p><p> void CMyDlg::OnRadioGy() </p><
99、;p><b> {</b></p><p> // TODO: Add your control notification handler code here</p><p><b> ?。?lt;/b></p><p><b> 4程序測(cè)試</b></p><p>&l
100、t;b> 4.1主菜單界面</b></p><p> 這是該程序主界面,如圖所示,該程序有添加,刪除,查詢,排序等功能??梢暂斎肼毠さ墓ぬ?hào),姓名,年齡,性別以及工種等信息。將各種需求分成多個(gè)小模塊,通過調(diào)用實(shí)現(xiàn)各種功能,增強(qiáng)了程序的可建設(shè)性。該界面通過控件和代碼共同連接VC,但并沒有連接數(shù)據(jù)庫(kù),該界面輸入的所有信息和操作保存在當(dāng)?shù)匚募A里,并不能保存到數(shù)據(jù)庫(kù)中。所以,只能供當(dāng)次操作使用,不能
101、重復(fù)使用。</p><p><b> 4.2添加職工信息</b></p><p> 如上圖所示,該程序?yàn)橛脩籼峁┎藛谓缑?,用戶可以?duì)程序的各種功能進(jìn)行選擇,方便用戶使用。添加職工信息。該功能實(shí)現(xiàn)字符串各類字符的累加統(tǒng)計(jì)。完成職工信息的添加,將添加的職工信息貯存在本地文件中,等關(guān)閉系統(tǒng)后,職工信息將不再存在。添加的職工信息將顯示在左側(cè)界面上。如圖所示。</p&
102、gt;<p> 4.3 完成添加職工信息</p><p> 如圖所示,則完成了職工信息的添加??梢赃M(jìn)行其他的操作。</p><p> 4.4 排序職工信息</p><p> 上圖為排序,該職工信息系統(tǒng)根據(jù)職工的工號(hào)進(jìn)行排序,如圖所示,職工的工號(hào)已經(jīng)按照從小到大的順序排列。該操作只需將需要排序的數(shù)據(jù)輸入后,點(diǎn)擊一下排序按鍵即可。</p>
103、;<p><b> 4.5查詢職工信息</b></p><p> 顯示,該職工不存在,這是因?yàn)?,圖上工號(hào)選框?yàn)榭?。所以現(xiàn)實(shí)如圖所示信息。</p><p> 如圖所示,在工號(hào)選框內(nèi)輸入你想查詢的職工工號(hào),單擊查詢按鍵,界面上將顯示如圖所示信息框。輸出你想查詢的職工信息。簡(jiǎn)單方便。</p><p><b> 4.6刪
104、除職工信息</b></p><p> 如圖所示,這幅圖與上圖相比,大家可以看到工號(hào)為23的職工信息已將不再界面顯示框內(nèi)了,這是職工信息系統(tǒng)的刪除操作,操作很簡(jiǎn)單,在顯示框中點(diǎn)擊你想刪除的職工的工號(hào),再單擊刪除按鍵,該職工信息將不再存在。</p><p> 5 設(shè)計(jì)體會(huì)及今后的改進(jìn)意見</p><p> 為了提高我們的實(shí)踐能力,讓我們學(xué)以致用,能靈活
105、運(yùn)用所學(xué)的知識(shí)進(jìn)行再創(chuàng)造,學(xué)校特安排我們進(jìn)行為期二周的Visual C++課程設(shè)計(jì)實(shí)習(xí),并安排了指導(dǎo)老師幫助輔導(dǎo),讓我們?cè)谝?guī)范化、嚴(yán)謹(jǐn)化、實(shí)用化上面有了很大進(jìn)展。</p><p> 在此次職工信息管理系統(tǒng)程序開發(fā)過程中,有很多東西值得我們思考并總結(jié)。</p><p> 開發(fā)過程大體可分為以下幾個(gè)步驟:</p><p> ?。?)思考總體設(shè)計(jì)方案:總體結(jié)構(gòu)和模塊外
106、部設(shè)計(jì),功能分配。思考要實(shí)現(xiàn)整個(gè)程序大體需要的幾個(gè)模塊和其中用到的Visual C++語(yǔ)言基本操作符、語(yǔ)句等。</p><p> ?。?)畫出總體設(shè)計(jì)方案流程圖:用流程圖的形式展現(xiàn)你的基本編程思想。</p><p> ?。?)流程圖具體化:即將流程圖中的幾大模塊的具體實(shí)現(xiàn)思考清楚,可以用流程圖的形式展現(xiàn).并想好實(shí)現(xiàn)的關(guān)鍵代碼。</p><p> ?。?)編輯程序代碼
107、:這是一個(gè)至關(guān)重要復(fù)雜而且需要反復(fù)修改的環(huán)節(jié),在此環(huán)節(jié)中你將發(fā)現(xiàn)總體設(shè)計(jì)和模塊思想會(huì)存在很多問題,需不斷改進(jìn).如何實(shí)現(xiàn)各函數(shù)功能,達(dá)到預(yù)期效果也將是一項(xiàng)繁復(fù)的工作。</p><p> ?。?)代碼的調(diào)試:在Visual C++6.0環(huán)境下輸入代碼并進(jìn)行調(diào)試和正確運(yùn)行。在調(diào)試過程中會(huì)遇到很多需要精化的地方,需要十足的耐心與細(xì)心,不斷改進(jìn)完善程序。</p><p> (6)最后修飾:程序可以
108、正確運(yùn)行之后,再不影響程序功能的情況下,運(yùn)用各種輔助性符號(hào),使界面更加美觀漂亮,操作更人性化.增強(qiáng)程序的新意與可行性?!?lt;/p><p> 通過此次任務(wù)式的程序設(shè)計(jì),不僅鞏固了我們?cè)谡n堂所學(xué)的知識(shí)。更重要的是學(xué)會(huì)了合作與交流。一個(gè)較大型的軟件必須是有一個(gè)團(tuán)隊(duì)來完成的,這種分工與合作的精神對(duì)我們將來的工作是很有幫助的。</p><p> 感覺課堂上的知識(shí)應(yīng)用到實(shí)際中還是很欠缺的,因此大學(xué)
109、里的學(xué)習(xí)課外自主學(xué)習(xí)是很重要的。獲取資料以完成任務(wù)的任務(wù)型學(xué)習(xí)是很有必要的。</p><p> 感覺自己在面向?qū)ο蟮姆矫孢€很欠缺,特別是虛函數(shù)。可能跟老師講的進(jìn)度有關(guān),還有就是C++身較難學(xué)。我相信自己努力了就會(huì)有回報(bào)的。凡是認(rèn)真去學(xué),都可以做好的,需要自己戒驕戒躁。真正靜下心來。在IT的世界里,需要不斷學(xué)習(xí),不斷進(jìn)取。</p><p><b> 參考文獻(xiàn)</b>
110、</p><p> [1] 馬安鵬.Visual C++程序設(shè)計(jì)導(dǎo)學(xué)。北京:清華大學(xué)出版社,2002</p><p> [2] 電子書籍. Visual C++技術(shù)內(nèi)幕(第四版).網(wǎng)址:http://www.5xsoft.com</p><p> [3] Beck Zaratian.Microsoft Visual Visual C++ 6.0程序員指南.希望
111、圖書創(chuàng)作室譯.北京:北京希望電腦公司出品,1998</p><p> [4]Richard C.Leinecker,Tom Archer. Visual C++ 6 寶典.張艷,張謙譯.北京:電子工業(yè)出版社,1999</p><p> [5] 李強(qiáng),賈云霞. Visual C++項(xiàng)目開發(fā)實(shí)踐.北京:中國(guó)鐵道出版社,2004</p><p> [6] 鄭莉,董淵
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- c++課程設(shè)計(jì)--職工信息管理系統(tǒng)
- c++課程設(shè)計(jì)--職工信息管理
- c++課程設(shè)計(jì)——學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)——學(xué)籍管理系統(tǒng)實(shí)驗(yàn)報(bào)告
- c++課程設(shè)計(jì)報(bào)告--學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)--藥品信息管理系統(tǒng)
- c++客戶信息管理系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)--超市信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告
- 學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告
- c語(yǔ)言課程設(shè)計(jì)報(bào)告---職工信息管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)
- c語(yǔ)言課程設(shè)計(jì)報(bào)告----職工信息管理系統(tǒng)設(shè)計(jì)
- c語(yǔ)言課程設(shè)計(jì)報(bào)告--職工信息管理系統(tǒng)
- c++課程設(shè)計(jì)——聊天程序?qū)嶒?yàn)報(bào)告
- c++課程設(shè)計(jì)報(bào)告---圖書信息管理系統(tǒng)設(shè)計(jì)
- c++課程設(shè)計(jì) 教職工信息管理系統(tǒng)源代碼
- c++課程設(shè)計(jì)---公司人員信息管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論