vcmfc對(duì)話(huà)框和常用教程_第1頁(yè)
已閱讀1頁(yè),還剩41頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第五章 第五章 對(duì)話(huà)框和常用控件 對(duì)話(huà)框和常用控件對(duì)話(huà)框是 Windows 應(yīng)用程序中最重要的用戶(hù)界面元素之一,是與用戶(hù)交互的重要手 段,在程序運(yùn)行過(guò)程中,對(duì)話(huà)框可用于撲捉用戶(hù)的輸入信息或數(shù)據(jù)。對(duì)話(huà)框是一個(gè)特殊類(lèi)型的窗口,任何對(duì)窗口進(jìn)行的操作(如:移動(dòng)、最大化、最小化等)都可在對(duì)話(huà)框中實(shí) 施,一般來(lái)說(shuō),在對(duì)話(huà)框中通過(guò)各種控件(如:按鈕、編輯框、列表框、組合框等)來(lái)和用戶(hù)進(jìn)行交互??丶窃谙到y(tǒng)內(nèi)部定義的用于和用戶(hù)交互的基本單元。 一、對(duì)話(huà)

2、框的使用 一、對(duì)話(huà)框的使用Visual C++提供的對(duì)話(huà)框編輯器能“可視”地進(jìn)行設(shè)計(jì)、編輯,并可用ClassWizard 為對(duì)話(huà)框從 CDialog 基類(lèi)中派生一個(gè)類(lèi),MFC 的 CDialog 類(lèi)封裝了用于對(duì)話(huà)框的顯示、關(guān)閉等操作的許多功能函數(shù),例如:DoModal 函數(shù)用來(lái)顯示模式對(duì)話(huà)框并返回用戶(hù)操作的結(jié)果。1、模式對(duì)話(huà)框(為 、模式對(duì)話(huà)框(為 186 附加舉例頁(yè)) 附加舉例頁(yè))所謂模式對(duì)話(huà)框是指,當(dāng)對(duì)話(huà)被彈出時(shí),用戶(hù)必須在對(duì)話(huà)框中

3、進(jìn)行相應(yīng)的操作,在退出對(duì)話(huà)框之前,對(duì)話(huà)框所在的應(yīng)用程序不能繼續(xù)執(zhí)行。平常我們所見(jiàn)到的對(duì)話(huà)框大多是模式對(duì)話(huà)框。例:模式對(duì)話(huà)框(通過(guò)菜單命令彈出) 例:模式對(duì)話(huà)框(通過(guò)菜單命令彈出)1) 建一個(gè)單文檔(SDI)應(yīng)用程序 2) 創(chuàng)建對(duì)話(huà)框模板Insert?Resource?選中 Dialog?單擊 New拖過(guò)一個(gè)靜態(tài)文本,鼠標(biāo)對(duì)準(zhǔn)它,按右鍵點(diǎn) properties 改標(biāo)題為“新建模式對(duì)話(huà)框” 。3)鼠標(biāo)右鍵對(duì)準(zhǔn)對(duì)話(huà)框的任何位置單擊,選擇 pr

4、operties 選項(xiàng),設(shè)置 ID 為 IDD_MYDIALOG4)給對(duì)話(huà)框創(chuàng)建類(lèi)雙擊新建對(duì)話(huà)框的任何位置,單擊 OK,寫(xiě)類(lèi)名為“CMyDlg” ,保證”CDialog”作為該類(lèi)的基類(lèi)。 5)創(chuàng)建菜單命令:a) 打開(kāi)資源編輯器的菜單項(xiàng) Menu b) 雙擊 IDR_MAINFRAMEc) 雙擊右邊空白菜單,點(diǎn)開(kāi) pop_up(讓它是空白),在名字處寫(xiě)”彈出對(duì)話(huà)框(MyDlg.DoModal(); //DoModal()是 CDialog

5、 類(lèi)成員函數(shù),通過(guò)調(diào)用該//函數(shù)將顯示對(duì)話(huà)框。} 7)在 CMainFrame.cpp 文件里加:#include “MyDlg.h” // 之后運(yùn)行。2、無(wú)模式對(duì)話(huà)框(為 、無(wú)模式對(duì)話(huà)框(為 186 附加頁(yè)) 附加頁(yè))非模式對(duì)話(huà)框,彈出后,可一直保留在屏幕上,用戶(hù)可繼續(xù)在應(yīng)用中進(jìn)行其它操作或*8、添加用戶(hù)代碼(195 頁(yè))接上,到 MyDlg.cpp 文件中,寫(xiě): void CMyDlg::OnBut

6、ton1(){ MessageBox(“歡迎進(jìn)入對(duì)話(huà)框的設(shè)計(jì)!”);}//這時(shí)運(yùn)行還不見(jiàn)對(duì)話(huà)框,接下*9、在程序中使用對(duì)話(huà)框(196 頁(yè))由于對(duì)話(huà)框的代碼是以類(lèi)為模塊來(lái)設(shè)計(jì)的,使用時(shí)需要在程序中加入該類(lèi)的頭文件,并定義一個(gè)類(lèi)對(duì)象,然后就可以使用該類(lèi)的相關(guān)成員。 項(xiàng)目工作區(qū)?FileView?打開(kāi)應(yīng)用程序的.cpp 文件,在前面加:#include “MyDlg.h”在 InitInstance 函數(shù)體中的 return TRUE 語(yǔ)句之

7、前添加下列代碼:CMyDlg dlg;dlg.DoModal();//DoModal()函數(shù)是負(fù)責(zé)對(duì)話(huà)框的顯示和終止。運(yùn)行!則直接顯示出對(duì)話(huà)框,單擊按鈕則出現(xiàn)“歡迎進(jìn)入對(duì)話(huà)框的設(shè)計(jì)”的字樣。本例建的 CMyDlg 類(lèi)及以后在各個(gè)項(xiàng)目中建立的類(lèi),在文檔、視圖、主框架類(lèi)中都可同樣使用。 (1)添加對(duì)話(huà)框資源對(duì)話(huà)框資源類(lèi)型:IDD_DIALOGBAR 對(duì)話(huà)條,往往和工具條放在一起。 IDD_FORMVIEW 一個(gè)表狀風(fēng)格的對(duì)話(huà)框,用于無(wú)模式

溫馨提示

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

評(píng)論

0/150

提交評(píng)論