

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> VC++程序設計</b></p><p> 1.設計方案及功能描述:</p><p> 本設計為一個基于對話框的應用項目(項目名稱為DW)。在主對話框中設置組合框、列表框和“添加”按鈕。當按下“添加”按鈕后,調用一個班級信息輸入的對話框(包括班級號、班級名稱、學生人數(shù)、女生人數(shù))。班級信息輸入的結果在主對話框中顯示,其中班級號顯示在組
2、合框,選擇組合框的班級號后,班級的其他信息顯示在列表框。</p><p><b> 2.實現(xiàn)步驟:</b></p><p> 2.1創(chuàng)建并設計對話框</p><p> 新建一個名為DW的工程,在這個創(chuàng)建一個基本對話框的應用項目。單擊對話框編輯器工具欄上的切換網(wǎng)格按鈕 ,顯示對話框網(wǎng)格。</p><p> ?。?)選
3、擇“File”→“New”菜單命令,在彈出的“New”對話框中,“Project”標簽頁面中顯示了一系列的應用程序項目類型;選擇MFC AppWizard(exe)的項目類型,將項目工作文件夾定位在“C:\USERS\ADMINISTRATOR\DESKTOP\VC++\DW”,并在“Project name”編輯框中輸入項目名DW,如圖1所示。</p><p><b> 圖1 新建工程</b&
4、gt;</p><p> (2)單擊 “確定”按鈕,出現(xiàn)如圖2所示的對話框。并在類型選擇欄選擇選擇“基本對話框”</p><p> 圖2 選擇所創(chuàng)建的應用程序的類型</p><p> ?。?)單擊“下一步”按鈕,出現(xiàn)如圖3所示的對話框在“對話框的標題是”一欄輸入“班級信息輸入”。</p><p> 圖3 輸入對話框的標題</p&g
5、t;<p> 完成上述步驟后,可以單擊完成按鈕,或者一直點擊下一步直至完成基本設置。并出現(xiàn)下圖所示的提示界面。</p><p> 圖4 完成基本設置后的提示信息</p><p> 單擊確定按鈕,進入如下界面: </p><p><b> 圖5 主對話框</b></p><p> 2.2控件選擇及設
6、置</p><p> (1)打開對話框網(wǎng)格,參見圖6的控件布局,用編輯器為主對話框添加如下圖所示的一些控件。</p><p> 圖6主對話框的控件布局</p><p> (2)將鼠標到左邊框的IDD_DW_DIALOG處并單擊右鍵,在下拉菜單中選擇插入dialog選項系統(tǒng)彈出如下圖所示的子對話框。</p><p><b>
7、圖7 子對話框</b></p><p> ?。?)打開對話框網(wǎng)格,參見圖8的控件布局,用編輯器為對話框添加如下圖所示的一些控件。</p><p> 圖8子對話框的控件布局</p><p> ?。?)更改各控件的ID和名稱,并添加相關屬性。如下列各圖所示:</p><p> ?。?)打開ClassWizard的Member Var
8、iable頁面,或者直接按Ctrl+W組合鍵,在Class name中選擇XMDialog,選中所需的控件號,雙擊或者單擊Add Variaable按鈕。依次為下列控件添加成員變量,如圖8所。</p><p> 圖8 為主對話框的控件添加成員變量</p><p> 同樣的,為子對話框的控件添加成員變量如圖9所示。</p><p> 圖9 為子對話框的控件添加成
9、員變量</p><p> ?。?)用MFC ClassWizard為DWDialog類添加WM_INITDIALOG消息映射,并添加下列初始化代碼:</p><p> BOOL CDWDlg::OnInitDialog()</p><p><b> {</b></p><p> CDialog::OnInitDia
10、log();</p><p> // Add "About..." menu item to system menu.</p><p> // IDM_ABOUTBOX must be in the system command range.</p><p> ASSERT((IDM_ABOUTBOX & 0xFFF0) == ID
11、M_ABOUTBOX);</p><p> ASSERT(IDM_ABOUTBOX < 0xF000);</p><p> CMenu* pSysMenu = GetSystemMenu(FALSE);</p><p> if (pSysMenu != NULL)</p><p><b> {</b><
12、;/p><p> CString strAboutMenu;</p><p> strAboutMenu.LoadString(IDS_ABOUTBOX);</p><p> if (!strAboutMenu.IsEmpty())</p><p><b> {</b></p><p> p
13、SysMenu->AppendMenu(MF_SEPARATOR);</p><p> pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);</p><p><b> }</b></p><p><b> }</b></p>
14、<p> // Set the icon for this dialog. The framework does this automatically</p><p> // when the application's main window is not a dialog</p><p> SetIcon(m_hIcon, TRUE);// Set
15、big icon</p><p> SetIcon(m_hIcon, FALSE);// Set small icon</p><p> // TODO: Add extra initialization here</p><p> return TRUE; // return TRUE unless you set the focus to a co
16、ntrol</p><p><b> }</b></p><p> 圖10 為DWDialog類添加WM_INITDIALOG消息映射</p><p> ?。?)在文件DWDlg.cpp的前面添加DWDialog的包含語句:</p><p> #include "DWDlg.h"</p&g
17、t;<p> #include "add.h"</p><p> ?。?)用MFC ClassWizard 為CDWDlg 增加IDC_ Combo1 控件的CBN_EDITCHANGE消息映射,并添加下列代碼:</p><p> void CDWDlg::OnSelchangeCombo1() </p><p><b&g
18、t; {</b></p><p> int index=m_classnb.GetCurSel ();</p><p> CString infor=*(CString*)m_classnb.GetItemDataPtr (index);</p><p> m_classmessage.ResetContent ();</p>&l
19、t;p> m_classmessage.AddString(infor);</p><p><b> }</b></p><p> ?。?)用MFC ClassWizard 為CDWDlg 增加IDOK控件的BN_CLICKED消息映射,并添加下列代碼:</p><p> void CDWDlg::OnOK() </p>
20、;<p><b> {add a;</b></p><p> if(a.DoModal ()==IDOK)</p><p><b> {</b></p><p> CString id="";</p><p> CString infor="&
21、quot;;</p><p> FILE* f=fopen("recordinfor.txt","r");</p><p> FILE* fp=fopen("recordid.txt","r");</p><p> while(!feof(f))</p><p&
22、gt; {infor+=fgetc(f);}</p><p> while(!feof(fp))</p><p> {id+=fgetc(fp);}</p><p> fclose(f);</p><p> fclose(fp);</p><p> int index;</p><p&g
23、t; index=m_classnb.AddString(id);</p><p> m_classnb.SetItemDataPtr (index,new CString(infor));</p><p><b> }</b></p><p> UpdateData(true);</p><p> //CDi
24、alog::OnOK();</p><p><b> }</b></p><p> (10)用MFC ClassWizard 為add 增加IDOK 控件的BN_CLICKED消息映射,并添加下列代碼:</p><p> void add::OnOK() </p><p><b> {</b>
25、;</p><p> UpdateData(true);</p><p> CString infor="";</p><p> CString id="";</p><p> id=m_classnumber;</p><p> infor+="班級名稱:&
26、quot;;</p><p> infor+=m_classname;</p><p> infor+="\r\n";</p><p> infor+="女生人數(shù):";</p><p> infor+=m_gnumber;</p><p> infor+="\
27、r\n";</p><p> infor+="班級人數(shù):";</p><p> infor+=m_snumber;</p><p> CDialog::OnOK();</p><p> FILE* f=fopen("recordinfor.txt","w+");&l
28、t;/p><p> for(int i=0;i<strlen(infor);i++)</p><p> fputc(infor[i],f);</p><p> fclose(f);</p><p> FILE* fp=fopen("recordid.txt","w+");</p>
29、<p> for(i=0;i<strlen(id);i++)</p><p> fputc(id[i],fp);</p><p> fclose(fp);</p><p> MessageBox("恭喜添加成功!");</p><p> CDialog::OnOK();</p>
30、<p><b> }</b></p><p><b> 3.調試和運行</b></p><p> 調試成功后的結果如下圖所示,單擊添加按鈕,就會彈出子對話框,在子對話框中輸入班級信息。</p><p><b> 圖11編譯運行結果</b></p><p>
31、圖12 輸入班級信息</p><p> 在輸入完一組數(shù)據(jù)后單擊確定,會彈出小窗口提示添加成功。</p><p><b> 圖13 提示框口</b></p><p> 所有班級信息添加完之后,單擊主對話框班級號欄的組合框會顯示所有以輸入信息班級的班級號,選擇02號班級,主對話框的列表框就會顯示該班級的全部信息。</p><
32、;p> 圖14 列表框顯示選中班級的信息</p><p><b> 心得體會</b></p><p> VC++課程設計的塵囂漸漸遠去,懷著對這次設計的些許不舍,懷著對當初課程設計開始時候的豪情萬丈的決心的留戀,通過這次課程設計積累的信心與斗志,心里感慨萬千。</p><p> 現(xiàn)在回顧兩個星期以前,當一個星期前的現(xiàn)在,當看到老師
33、布置給我們的這些題目時,我們都蒙了,這么難的題目我們怎么可能會編出來啊,可是埋怨是沒有用的,我們只能盡我們自己最大的努力把程序給寫出來,雖然知道這一路肯定是異常的艱苦,但豁出去了。</p><p> 上網(wǎng)查資料是我們邁開的第一步,看是否有類似的題目,可是泡了幾個小時的網(wǎng)吧還是沒有,我們失望而回.但是恍然一想,找學姐,學長們傳授點經(jīng)驗啊,但是最終還是空手而歸.我們真的有點絕望了,但是由于我們此刻有著年輕人的激情,
34、沖動,火力,想了一想,求天求地求人不如求自己,所以我們決定大家在一起共同努力,分配任務去圖書館查找資料. 肯定沒有現(xiàn)成的,我們只能查相關的函數(shù),經(jīng)過兩三天的努力,我們把框架弄出來了,可是還有計算和閃爍這兩大難題擺在我們面前,真的是個難題,自從把框架弄好了以后就沒有進展了,眼看幾天都快過了,我們那個急啊,可是急也沒有用。我們相信我們幾個人總歸可以搞定,這是我們可以堅持到現(xiàn)在的信念.后來我們不停地總結過去走過的彎路,回想上課時老師怎么教我們
35、構建一個程序,要想構建一個程序,必須要有一個完整的想法,算法,大概的腦海路徑,才能完整地創(chuàng)建一個程序.</p><p> 經(jīng)過一個星期的學習,使我對VC語言有了更進一步的認識和了解,要想學好它要重在實踐,要通過不斷的上機操作才能更好地學習它,通過實踐,我也發(fā)現(xiàn)我的好多不足之處,首先是自己在指法上還不行,經(jīng)常按錯字母,通過學習也有所改進;再有對VC語言的一些標準庫函數(shù)不太了解,還有對函數(shù)調用的正確使用不夠熟悉,還
36、有對VC語言中經(jīng)常出現(xiàn)的錯誤也不了解,通過實踐,使我在這幾個方面的認識有所提高。 與其臨淵羨魚,不如退而結網(wǎng)。這次課程設計給我的最大的印象就是如果自己有了興趣,就動手去做,困難在你的勇氣和毅力下是抬不了頭的。從做這個設計開始無論遇到什么困難,我都沒有一絲的放棄的念頭。出于對知識的渴望,出于對新技術的好奇,出于對一切未知的求知。我完成了這次課程設計,不過這只是我學習路上的驛站,我會繼續(xù)學習它,語言本來就
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- vc++課程設計報告
- vc++軟件課程設計報告
- vc++庫函數(shù)課程設計
- vc++課程設計報告----對抗游戲
- vc++課程設計-- 餐飲管理系統(tǒng)
- vc++課程設計--工資管理
- vc++課程設計報告--對抗游戲
- vc++網(wǎng)絡聊天軟件課程設計
- vc++課程設計--工資管理
- vc++課設課程設計報告
- vc++課程設計報告---球員管理系統(tǒng)
- VC++課程設計--工資管理.doc
- vc++火車票信息管理系統(tǒng)課程設計報告
- vc++課程設計----用winsock實現(xiàn)聊天
- vc++課程設計《算術表達式》
- 同學錄系統(tǒng)vc++課程設計
- vc++課程設計實驗報告---對抗游戲
- vc++課程設計報告---橫向繪制余弦曲線
- vc++課程設計~大量例題供你學習
- vc++課程設計--基于mfc的模擬時鐘
評論
0/150
提交評論