九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

Windows編程技術10

上傳人:fgh****35 文檔編號:247454172 上傳時間:2024-10-18 格式:PPT 頁數(shù):19 大?。?23.50KB
收藏 版權申訴 舉報 下載
Windows編程技術10_第1頁
第1頁 / 共19頁
Windows編程技術10_第2頁
第2頁 / 共19頁
Windows編程技術10_第3頁
第3頁 / 共19頁

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《Windows編程技術10》由會員分享,可在線閱讀,更多相關《Windows編程技術10(19頁珍藏版)》請在裝配圖網上搜索。

1、單擊此處編輯標題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,*,*,Windows,編程技術,對話框,1,概述,對話框是一個窗口,它不但可以接收消息,而且還可以在其客戶區(qū)中進行繪圖操作。但對話框又不同于一般的窗口,它包含有一些特殊的子窗口,這些子窗口被稱為對話框的控件。對話框的主要功能要通過這些控件來實現(xiàn)。,在,MFC,程序中,一個對話框由兩部分組成:對話框模板資源與對話框類。,對話框模板資源,實際上相當于一個窗口布局設計圖。該模板定義了對話框的外觀,對話框內有哪些控件以及它們的位置、尺寸及風格等。由于該模板以資源的形式包含在程序中,所以被稱為對話框模板資源。對話框模板

2、資源可以在,VC,開發(fā)環(huán)境提供的“對話框編輯器”中設計完成。,在,MFC,中,所有對話框類的的基類是,CDialog,類,,CDialog,類也是,CWnd,類的派生類。它用來封裝對話框的各種功能,完成對話框的各種操作,,CDialog,可以依據(jù)一個對話框模板資源建立一個實際的對話框。,2,對話框模板資源,創(chuàng)建對話框模板資源,打開“資源視圖”窗口,,,選擇菜單“插入,Dialog”,即可,編輯對話框模板屬性,外觀,外觀屬性可用來設定對話框的顯示效果,其中常用的有對話框標題等,通過修改屬性窗口外觀欄中“,Caption”,對應的字符串可以修改對話框標題。,位置,位置屬性可用來設定對話框初始顯示的

3、位置。,行為,行為屬性可用來設定對話框運行時的行為。,雜項,雜項屬性可用來設定對話框中一些不好分類的屬性,字體,字體屬性決定在對話框中使用的字體類型及尺寸,3,對話框模板資源,在對話框模板中添加或刪除控件,工具箱,添加控件,首先在工具箱內用鼠標左鍵單擊的方法選擇好欲添加的控件,將鼠標指針移動到對話框面板上,可以發(fā)現(xiàn)鼠標光標已經被改變成與控件圖標相同的樣子,用鼠標左鍵在對話框面板上單擊,剛才選擇的控件被添加到對話框面板上。,刪除控件,用鼠標左鍵單擊的方法在對話框面板上選擇好欲刪除的控件,控件被,8,個色塊包圍,說明該控件處于選取狀態(tài),直接按鍵盤,Del,鍵可刪除選取的控件。,4,對話框模板資源,

4、在對話框模板上調整控件,移動控件,用鼠標左鍵可以在對話框面板上拖動控件進行移動,也可以在選擇好控件,用鍵盤方向鍵移動控件。,修改控件尺寸,選擇好控件,控件被,8,個色塊包圍,用鼠標左鍵可以拖動色塊來修改控件的尺寸。,精確調整控件,使用開發(fā)環(huán)境主菜單“視圖工具欄對話框編輯器”可以打開“對話框編輯器”工具欄,使用該工具欄中的工具可以精確調整控件的大小和位置,。,5,對話框模板資源,修改控件的屬性,由于每個控件也都是一個窗口,所以可以通過控件的屬性窗口來調整控件的屬性。每個控件一般都有“外觀”、“行為”、“雜項”三個屬性,其意義和功能與對話框模板的相應屬性相仿。其中比較重要的是“雜項”中的,ID,,

5、它是該控件的唯一標識,對話框要使用該標識與控件進行通信。,在插入新的控件時,資源編輯器要確認這個控件有一個唯一的標識。因為系統(tǒng)自動生成的,ID,只能反映控件類型和數(shù)字編號,所以在插入控件后,通常需要將自動生成的,ID,更改為一個具有更明確含義的,ID,。,6,對話框模板資源,設定控件跳格次序,對話框中的控件可以按照一定順序跳格。在對話框運行過程中,可以設定哪一個控件是被默認選擇的以及使用鍵盤上的,Tab,鍵從一個控件跳格至另一個控件的順序關系。當跳至某個控件時,此控件就會接收當前的輸入焦點。,在開發(fā)環(huán)境主菜單中選擇“格式,Tab,鍵跳格順序”命令,對話框模板此時會顯示出每一個控件,的缺省跳格順

6、序,,在希望成為第一個按鈕的控件,單擊鼠標,它的邊上就會出現(xiàn),數(shù)字,1,。,按希望的順序逐一單擊各個控,件,每個控件順次出現(xiàn)一個數(shù),字,直到全部設置完成。,7,對話框類,模式對話框,當一個模式對話框運行時,系統(tǒng)禁止了對該對話框父窗口的通信。,建立對話框對象,CDialog: CDialog(UINT nIDTemplate,CWnd* pParentWnd = NULL),CDialog dlg(IDD_ABOUTBOX);,使用對話框,virtual int CDialog:DoModal(),dlg. DoModal(),結束對話框,DoModal(),返回后,對話框就已經結束了 。,8,

7、對話框類,模式對話框,代碼示例,CDialog dlg(IDD_ABOUTBOX);,CString str;,int nResult=dlg.DoModal();,switch(nResult),case IDOK:,str=OK;,break;,case IDCANCEL:,str=CANCEL;,break;,default:,str=,其它值,;,break;,AfxMessageBox(str);,9,對話框類,非模式對話框,建立對話框對象,CDialog: CDialog(),CDialog dlg;,使用對話框,BOOL CDialog:Create(UINT nIDTempla

8、te,CWnd* pParentWnd = NULL),dlg.Create(IDD_ABOUTBOX);,結束對話框,非模式對話框對象被銷毀時,對話框可以被結束,CDialog: DestroyWindow(),10,自定義對話框,為了在對話框中使用對話框模板資源中的控件,需要從,CDialog,中派生子類,在子類中添加對這些控件的處理功能。不同的控件使用方法不同,下面將通過一個簡單的例子來講述添加控件的基本方法,該例子顯示一對話框,可以將用戶輸入的字符串進行反序。,建立模板資源,新建對話框模板,添加靜態(tài)文本,(Static Text),控件,添加按鈕,(Button),控件,添加文本編輯框

9、,(Edit),控件,建立,CDialog,派生類,用鼠標右擊對話框模版上的標題欄或空白區(qū)域,在彈出菜單上選擇“添加類”,,在該對話框中修改類名為“,CMyDlg”,修改基類為“,CDialog”,,然后點擊“完成”按鈕,11,自定義對話框,為控件添加消息映射,用鼠標右擊欲接收消息的控件,在彈出式菜單上選擇“添加事件處理程序”,,消息映射被自動添加。,為控件添加成員變量,用鼠標右擊選擇的控件,在彈出式菜單上選擇“添加變量”,在“添加變量向導”對話框中在“類別”項選添加值(,Value,),,,然后選擇變量類型并輸入變量名,后確定即可。,使用,CDialog,派生類對象,包含頭文件,使用示例,v

10、oid CMy1001AView:OnDlg(),/ TODO:,在此添加命令處理程序代碼,CMyDlg dlg;,dlg.DoModal();,12,基于對話框的,MFC,程序,建立項目,程序框架分析,采用“應用程序向導”生成標準的對話框程序框架,然后修改成用戶所需要的程序,是編制基于對話框程序的常用方法。使用“應用程序向導”生成的對話框程序包含以下幾個文“,1001.vcproj”,、“,1001.h”,、“,1001.cpp”,、“,1001.rc”,、“,resMy1001.ico”,、“,resMy1001.rc2”,、“,StdAfx.h”,、“,StdAfx.cpp”,、“,Re

11、source.h”,件,,13,通用對話框,CFileDialog,建立,CFileDialog,對象,CFileDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt=NULL,LPCTSTR lpszFileName =NULL,DWORD dwFlags=OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,LPCTSTR lpszFilter=NULL, CWnd* pParentWnd = NULL );,bOpenFileDialog,為,TRUE,, 創(chuàng)建打開對話框;為,FALSE,,創(chuàng)建保存對話框。,lpszDefEx

12、t,缺省文件擴展名。,lpszFileName,初始文件名,如果為,NULL,,則不顯示初始文件名。,dwFlags,指明一些特定風格,通過這些風格可定制對話框。,pParentWnd,為指向父窗口或擁有者窗口的指針。,lpszFilter,指向過濾字符串:,1,)過濾字符串有由多個子串組成,每個子串由兩部分組成,第一部分是文件類型的文字說明,如“,Text file (*.txt)”,,第二部分是用于過濾的匹配字符串,如“*,.txt”,。,2,)子串的兩部分用豎線字符“,|”,分隔開,各子串之間也要用“,|”,分隔,整個串的最后兩個字符必須是兩個連續(xù)的豎線字符“,|”,。,一個典型的過濾字

13、符串如下面所示:,char szFilter=“DATA files (*.DAT)|*.dat|Text files(*.txt)|*.txt|”;,14,通用對話框,使用,CFileDialog,對象,使用,CFileDialog:DoModal,()顯示文件對話框,若,DoModal,返回的是,IDOK,,那么可以用教材表,10-2,列出的,CFileDialog,類的成員函數(shù)來獲取與所選文件有關的信息。,15,通用對話框,CColorDialog,建立,CColorDialog,對象,CColorDialog( COLORREF clrInit = 0, DWORD dwFlags =

14、 0, CWnd* pParentWnd = NULL );,clrInit,用來指定初始的顏色選擇,如果沒有設置,缺省為,RGB,(,0,,,0,,,0,)(黑色)。,dwFlags,用來設置對話框外觀的一組標志。,pParentWnd,用于指定對話框的父窗口或擁有者窗口指針。,建立,CColorDialog,對話框,調用,DoModal,成員函數(shù)顯示對話框,并允許用戶選擇顏色,如果,DoModal(),返回,IDOK,,可以使用,CColorDialog,的成員函數(shù)取得顏色信息。,16,通用對話框,示例代碼,建立,SDI,程序框架,修改菜單資源,添加菜單項“文件取得顏色”,并設置,ID,為

15、,ID_GETCOLOR,,在文檔類中添加“文件取得顏色”的命令消息映射,并編輯消息處理函數(shù)修改代碼如下:,void CMy1001ADoc:OnGetColor(),/ TODO:,在此添加命令處理程序代碼,CColorDialog dlg;,if(dlg.DoModal()=IDOK),COLORREF rColor;,rColor=dlg.GetColor();,17,通用對話框,CFontDialog,建立,CFontDialog,對象,CFontDialog ( LPLOGFONT lplfInitial = NULL , DWORD dwFlags = CF_EFFECTS | C

16、F_SCREENFONTS, CDC* pdcPrinter = NULL, CWnd* pParentWnd = NULL);,lplfInitial,指向一個,LOGFONG,結構,用來初始化對話框中的字體設置,dwFlags,用于設置對話框。,pdcPrinter,指向一個代表打印機的,CDC,對象,若設置該參數(shù),則選擇的字體就為打印機所用,pParentWnd,用于指定對話框的父窗口或擁有者窗口。,建立,CFontDialog,對話框,調用,DoModal,成員函數(shù)顯示對話框,并允許用戶選擇字體,,如果,DoModal(),返回,IDOK,,可以使用,CFontDialog,的成員函數(shù)取得所選字體的信息,18,通用對話框,示例代碼,建立,SDI,程序框架,修改菜單資源,添加菜單項“文件選擇字體”,并設置,ID,為,ID_GETFONT,,在文檔類中添加“文件選擇字體”的命令消息映射,并編輯消息處理函數(shù)如下:,void CMy1001ADoc:OnGetFont(),/ TODO:,在此添加命令處理程序代碼,CFontDialog dlg;,if(dlg.DoModal()=IDOK),CFont *pFont;,pFont=dlg.GetFont();,19,

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

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!