對話盒的基本觀念_第1頁
對話盒的基本觀念_第2頁
對話盒的基本觀念_第3頁
對話盒的基本觀念_第4頁
對話盒的基本觀念_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

VisualC++WindowsProgramming第九章Modal對話盒大綱對話盒的基本觀念對話盒的設(shè)計基本控制元件Windows共用控制元件對話盒的基本觀念Modalvs.Modeless幾乎每一個Windows程式都會利用對話盒與使用者交談。所謂的對話盒就是一個視窗,可以接收訊息或者移動與關(guān)閉,甚至可以在客戶區(qū)內(nèi)接受繪圖指令。對話盒有獨占式(modal)與非獨占式(modeless)。CDialog

的baseclass可以支援這兩種對話盒。所謂的modal對話盒,表示在對話盒尚未關(guān)閉前使用者將無法操作程式的其他功能,如「開啟舊檔」對話盒。所謂的modeless對話盒,表示在對話盒尚未關(guān)閉前,使用者仍然可以操作程式的其他功能,如「搜尋/取代」對話盒。對話盒的基本觀念(續(xù))資源與控制元件對話盒和CView

視窗的差別,主要在於一個對話盒與一份Windows的資源綁在一起,而這份資源指定了對話盒的元件和它的畫面佈置。一個對話盒的資源包含許多元素,這些元素稱之為控制元件。對話盒控制元件包括編輯盒(editbox)、按鈕(button)、列示盒(listbox)、複式清單(combobox)、靜態(tài)文字(statictext)、樹狀顯示器(treeview)、進度顯示器(progressindicators)、滑動指針(slider)等等。對話盒的基本觀念(續(xù))資源與控制元件(續(xù))MFC和ClassWizard

一起合作使得Windows所提供的對話盒更具邏輯性。ClassWizard

產(chǎn)生一個衍生於CDialog

的類別,於是你可以把對話盒類別的資料成員與對話盒控制元件關(guān)聯(lián)在一起。你可以設(shè)定編輯盒(editbox)屬性,如字串的最大長度和數(shù)字的上下限。ClassWizard

會產(chǎn)生一些呼叫MFC資料交換函式與資料驗證函式的程式碼,透過這些程式碼可以傳遞畫面上與資料成員間的資訊。對話盒的設(shè)計在一個專案中加上一個modal對話盒的步驟如下:利用對話盒編輯器產(chǎn)生一個包含各種控制元件的對話盒資源。對話盒編輯器會修改專案的資源檔,並含入新產(chǎn)生的對話盒資源。它還會修改專案的resource.h

檔,加上對應(yīng)的#define常數(shù)。利用ClassWizard

建立一個衍生於CDialog

的對話盒類別,並把它附著到你所新增的對話盒資源中。ClassWizard

會把相關(guān)的程式碼和標(biāo)頭檔附加到專案中。利用ClassWizard

為對話盒類別加上資料成員,資料交換和資料驗證函式。利用ClassWizard

為對話盒按鈕和其他可以產(chǎn)生事件的控制元件加上訊息處理函式。為特殊的控制元件撰寫初始化程式碼和訊息處理函式。確定使用者關(guān)閉對話盒時,會呼叫CDialog

的OnOK

虛擬成員函式。在你的View類別中,撰寫啟動對話盒的程式碼。程式碼包括:呼叫對話盒類別的建構(gòu)式和DoModal成員函式.對話盒的基本控制元件

StaticTextGroupBoxCheckBoxComboBoxHorizontalScrollBar

PictureEditBoxButtonRadioButtonListBoxVerticalScrollBar

Windows共用控制元件

SpinSliderListControlTabControlRichEditMonthCalendarCustomControl

ProgressHotKeyTreeControlAnimateDateTimePickerIPAddressExtendedComboBoxP21-261.按下Width選項,callMyView::OnSetWidth

2.Call對話盒的建構(gòu)子

3.執(zhí)行CDialog::DoModal4.執(zhí)行SWidthDlg::OnInitDialog

5.顯示對話盒6.按下OK,callOnOK()7.結(jié)束傳回IDOK8.完成MyView::width屬性的設(shè)定對話盒物件屬性ok顯示對話盒時,將對話盒物件的值,交換至對話盒的控制項中關(guān)閉對話盒時,將控制項中的資料交換至對話盒物件的屬性利用對話盒物件的屬性取得使用者輸入的資料建立對話盒時設(shè)定對話盒物件的屬性4.OnInitDialog()5.CallDo

溫馨提示

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

評論

0/150

提交評論