版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第11章對(duì)話框程序設(shè)計(jì)對(duì)話框的使用菜單控制條對(duì)話框的使用如何建立一個(gè)基于對(duì)話框的應(yīng)用常見的簡(jiǎn)單控件對(duì)話框的使用對(duì)話框中可以包含的控件有3種:Windows公共控件例如編輯控件(EditControl)、按鈕(Button)、列表框(ListBox)、組合框(ComboBox)、樹控件(TreeControl)、列表控件(ListControl)和進(jìn)度指示器等等。ActiveX控件。所有者描述的控件程序員在對(duì)話框中描述的控件。靜態(tài)文本控件靜態(tài)文本控件主要用于顯示靜態(tài)的文本,它是靜態(tài)控件的一種。靜態(tài)控件的主要作用是顯示靜態(tài)的信息,可以顯示字符串、圖標(biāo)、光標(biāo)、位圖等,也可以作為容器來(lái)顯示其他的控件或者分割控件。文本編輯控件文本編輯控件主要用于實(shí)現(xiàn)接收用戶的輸入,它可以是單行的,也可以是多行的。如果設(shè)置文本編輯控件是多行的,那么在這個(gè)控件接收用戶輸入時(shí)如果用戶按Enter鍵,文本編輯控件就可以在下一行顯示用戶的輸入。文本編輯控件的常用屬性文本編輯控件的常見事件按鈕控件按鈕控件是對(duì)話框應(yīng)用程序中比較常見的控件,主要用于接收用戶的命令。在MFC中,按鈕控件除了指通常意義上的按鈕之外,還可以指復(fù)選框控件、單選按鈕控件和組框控件。這4種控件都是由MFC的CButton類進(jìn)行管理的,所以常見的屬性和事件都一樣。按鈕控件的常見屬性按鈕控件的常見事件創(chuàng)建應(yīng)用使用上述控件課堂當(dāng)場(chǎng)演示列表框控件使用列表框可以列出多個(gè)選項(xiàng)供用戶選擇其中的一項(xiàng)或者多項(xiàng)。如果是單選,那么只可以選擇其中的一項(xiàng);如果是多選,那么可以使用Ctrl和Shift鍵選擇多個(gè)項(xiàng)目,被選中的項(xiàng)目以高亮的方式顯示。列表框控件的常用屬性和事件列表框控件的主要成員函數(shù)(1)(1)GetCount:得到列表框控件中所有項(xiàng)目的數(shù)目。(2)SetItemData/GetItemData:設(shè)置/獲取與一個(gè)項(xiàng)目相關(guān)的整數(shù)值。(3)GetSel:判斷項(xiàng)目是否選中。(4)SetSel:在列表框控件中選擇項(xiàng)目或者取消對(duì)一個(gè)項(xiàng)目的選擇。(5)SetCurSel/GetCurSel:在列表框中選中一個(gè)項(xiàng)目/獲取被選中項(xiàng)目的索引。(6)GetSelCount:獲取列表框中被選中的項(xiàng)目數(shù)。(7)GetSelItems:獲取所有被選中項(xiàng)目的索引,并放到一個(gè)整數(shù)緩沖區(qū)中。列表框控件的主要成員函數(shù)(2)(8)GetText:根據(jù)項(xiàng)目索引獲取對(duì)應(yīng)的字符串。(9)AddString:向列表框控件中添加一個(gè)項(xiàng)目。(10)InsertString:在列表框控件的指定位置添加一個(gè)項(xiàng)目。(11)DeleteString:在列表框控件中刪除指定的項(xiàng)目。(12)ResetContent:刪除列表框控件中的所有項(xiàng)目。(13)Dir:將當(dāng)前目錄下的所有文件名加入到列表框控件中。組合框控件組合框控件可以說(shuō)是多種控件的組合。使用它可以實(shí)現(xiàn)列表框控件、文本編輯控件等控件的組合功能。組合框平時(shí)可以隱藏起來(lái),需要使用數(shù)據(jù)時(shí)可以通過(guò)一個(gè)下拉列表框顯示更多的內(nèi)容。組合框控件可以有3種不同的風(fēng)格SimpleDropDownDropList組合框控件的常用事件組合框控件的成員函數(shù)(1)(1)GetCount:獲取組合框控件中所有項(xiàng)目的數(shù)目。(2)SetItemData/GetItemData:設(shè)置/獲取與一個(gè)項(xiàng)目相關(guān)的整數(shù)值。(3)GetLBText:根據(jù)項(xiàng)目索引項(xiàng)目字符串。(4)Clear,Copy,Cut和Paste:組合框控件的編輯控件的剪貼板操作。(5)SetCurSel/GetCurSel:在組合框中選中一個(gè)項(xiàng)目/獲取被選中項(xiàng)目的索引。組合框控件的成員函數(shù)(2)(6)AddString:向組合框控件中添加一個(gè)項(xiàng)目。(7)InsertString:在組合框控件的指定位置添加一個(gè)項(xiàng)目。(8)DeleteString:在組合框控件中刪除指定的項(xiàng)目。(9)ResetContent:刪除組合框控件中的所有項(xiàng)目。(10)Dir:將當(dāng)前目錄下的所有文件名加入到組合框控件中。IP地址控件IP地址控件與文本編輯控件比較類似,但是只能夠接收用戶輸入的IP地址。IP地址是由4個(gè)域構(gòu)成的,中間用小數(shù)點(diǎn)分開,每個(gè)域只能輸入0~255之間的數(shù)IP地址控件的成員函數(shù)(1)IsBlank:判定4個(gè)域是否為空。(2)ClearAddress:清空控件的內(nèi)容。(3)GetAddress:獲取輸入的IP地址。(4)SetAddress:設(shè)置IP地址。(5)SetFieldRange:設(shè)置控件中4個(gè)域的可輸入范圍圖片控件圖片控件與靜態(tài)文本控件一樣,是一個(gè)靜態(tài)控件,由CStatic類進(jìn)行管理。在這個(gè)控件上可以方便地顯示一個(gè)圖片。只要在這個(gè)控件的屬性中指明它要顯示的圖片的位置和類型,就可以直接顯示而無(wú)須進(jìn)行任何編碼。下面通過(guò)一個(gè)例子來(lái)說(shuō)明如何使用IP地址控件和圖片控件。菜單編輯菜單 使用CMenu來(lái)管理菜單編寫代碼菜單菜單是Windows應(yīng)用程序不可或缺的程序界面構(gòu)件。使用菜單可以簡(jiǎn)單地實(shí)現(xiàn)各種操作,并節(jié)省窗體空間。菜單中的各個(gè)菜單項(xiàng)(通常稱為菜單命令)可以響應(yīng)鼠標(biāo)的單擊并產(chǎn)生命令消息,從而提供用戶對(duì)程序的控制。使用MFC應(yīng)用程序向?qū)傻腟DI或者M(jìn)DI應(yīng)用程序都已經(jīng)具有了菜單,但是基于對(duì)話框的應(yīng)用程序卻不能自動(dòng)生成菜單。編輯菜單可執(zhí)行“項(xiàng)目”|“添加資源”命令,彈出“添加資源”對(duì)話框來(lái)添加資源CMenu中常用的菜單創(chuàng)建、初始化和銷毀成員函數(shù)(1)CMenu:構(gòu)造函數(shù),用于創(chuàng)建一個(gè)菜單對(duì)象。(2)Attach:將Windows菜單句柄與CMenu對(duì)象聯(lián)系起來(lái)。(3)CreateMenu:創(chuàng)建空菜單并把它和菜單對(duì)象聯(lián)系起來(lái)。(4)CreatePopupMenu:創(chuàng)建空的彈出式菜單并把它和菜單對(duì)象聯(lián)系起來(lái)。(5)LoadMenu:初始化菜單。(6)Detach:解除Windows菜單句柄與CMenu對(duì)象的聯(lián)系。(7)DestroyMenu:銷毀與菜單對(duì)象相聯(lián)系的菜單,并釋放它所占用的內(nèi)存。CMenu中常用的與菜單項(xiàng)相關(guān)的成員函數(shù)(1)(1)TrackPopupMenu:在指定位置顯示一個(gè)浮動(dòng)式彈出菜單。(2)DeleteMenu:刪除指定菜單項(xiàng)。(3)AppendMenu/InsertMenu:在末尾/指定的位置添加一個(gè)菜單項(xiàng)。(4)CheckMenuItem:選擇和清除菜單選項(xiàng)標(biāo)識(shí)。(5)EnableMenuItem:允許和禁止一個(gè)菜單項(xiàng)。CMenu中常用的與菜單項(xiàng)相關(guān)的成員函數(shù)(2)(6)GetMenuItemCount:獲取一個(gè)菜單中的子菜單項(xiàng)數(shù)。(7)GetMenuState:獲取指定菜單的狀態(tài)。(8)GetMenuString:獲取代表菜單的字符串。(9)ModifyMenu:修改指定的菜單項(xiàng)。(10)RemoveMenu:刪除指定的菜單項(xiàng)??刂茥l工具欄 狀態(tài)條工具欄工具欄是在Windows程序設(shè)計(jì)中經(jīng)常用到的一種控制條。它包含一系列的按鈕,單擊這些按鈕可以實(shí)現(xiàn)不同的操作。工具欄通常處于應(yīng)用程序窗口的最頂端,也可以浮動(dòng)于窗口的任何位置,或者??吭谄渌目窟呂恢谩J褂檬髽?biāo)操作可以實(shí)現(xiàn)改變工具欄位置的操作編輯工具欄使用“項(xiàng)目”|“添加資源”命令來(lái)添加一個(gè)工具欄使用CToolBar和CToolBarCtrl來(lái)實(shí)現(xiàn)工具欄操作由于基于對(duì)話框的應(yīng)用程序并不會(huì)自動(dòng)創(chuàng)建工具欄,因此必須編寫相應(yīng)的代碼才能夠顯示新創(chuàng)建的工具欄。這需要使用CToolBar和CToolBarCtrl類。CToolBar常用的函數(shù)(1)(1)CToolBar:構(gòu)造函數(shù)。(2)Create:創(chuàng)建一個(gè)工具欄。(3)SetSize:設(shè)置工具欄按鈕的大小。(4)SetHeight:設(shè)置工具欄的高度。(5)LoadToolBar:載入一個(gè)工具欄。CToolBar常用的函數(shù)(2)(6)LoadBitmap:載入工具欄對(duì)應(yīng)的位圖。(7)SetButtonInfo/GetButtonInfo:設(shè)置/獲得工具欄按鈕信息。(8)SetButtonStyle/GetButtonStyle:設(shè)置/獲得工具欄按鈕風(fēng)格。(9)SetButtonText/GetButtonText:設(shè)置/獲得工具欄按鈕文本。(10)GetToolBarCtrl:獲取與工具欄按鈕相關(guān)的CToolBarCtrl對(duì)象。(11)MoveWindow:將工具欄移動(dòng)至合適的位置。狀態(tài)條狀態(tài)條既不能接收用戶的命令,也不能產(chǎn)生命令消息。它惟一的作用是在Panel框中顯示文本,顯示當(dāng)前程序的狀態(tài)。使用MFC應(yīng)用程序向?qū)?chuàng)建的基于對(duì)話框的應(yīng)用程序同樣不會(huì)自動(dòng)添加狀態(tài)條,而需要用戶手動(dòng)添加資源和代碼。資源準(zhǔn)備添加字符串使用CStatusBar類管理狀態(tài)條要管理狀態(tài)條,就要使用CStatusBar類和CStatusBarCtrl類,這兩個(gè)類都可以管理狀態(tài)條。CStatusBar類的常用成員函數(shù)(1)(1)CStatusBar:創(chuàng)建一個(gè)CStatusBar對(duì)象。(2)Create:創(chuàng)建一個(gè)狀態(tài)條。(3)SetIndicators:設(shè)置狀態(tài)條可以顯示的指示字符串。(4)GetItemID:從狀態(tài)條的指示字符串序號(hào)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房屋置換與家居定制服務(wù)合同范本3篇
- 二零二五年度校園雕塑作品采購(gòu)合同范本3篇
- 2025年度環(huán)境監(jiān)控系統(tǒng)工程合同2篇
- 海南職業(yè)技術(shù)學(xué)院《文獻(xiàn)檢索》2023-2024學(xué)年第一學(xué)期期末試卷
- 襄陽(yáng)汽車課程設(shè)計(jì)招聘
- 海南師范大學(xué)《物流信息技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年度名校學(xué)區(qū)二手房買賣合同范本2篇
- 二零二五年度國(guó)際貿(mào)易實(shí)務(wù):磋商與訂立合同實(shí)務(wù)操作與法律風(fēng)險(xiǎn)防范手冊(cè)9篇
- 二零二五年度海寧房產(chǎn)買賣糾紛調(diào)解及法律援助合同3篇
- 2025年度房地產(chǎn)項(xiàng)目銷售代理合同3篇
- 閱讀理解(專項(xiàng)訓(xùn)練)-2024-2025學(xué)年湘少版英語(yǔ)六年級(jí)上冊(cè)
- 民用無(wú)人駕駛航空器產(chǎn)品標(biāo)識(shí)要求
- 2024年醫(yī)院產(chǎn)科工作計(jì)劃例文(4篇)
- 2024-2025學(xué)年九年級(jí)英語(yǔ)上學(xué)期期末真題復(fù)習(xí) 專題09 單詞拼寫(安徽專用)
- 無(wú)創(chuàng)通氣基本模式
- 江西省贛州市尋烏縣2023-2024學(xué)年八年級(jí)上學(xué)期期末檢測(cè)數(shù)學(xué)試卷(含解析)
- 《臨床放射生物學(xué)》課件
- 腸造口還納術(shù)手術(shù)配合
- 2024年中考語(yǔ)文試題分類匯編:詩(shī)詞鑒賞(學(xué)生版)
- 科學(xué)計(jì)算語(yǔ)言Julia及MWORKS實(shí)踐 課件 3-MWORKS簡(jiǎn)介
- 2024年10月自考04532財(cái)務(wù)會(huì)計(jì)專題試題及答案含解析
評(píng)論
0/150
提交評(píng)論