MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)
屬性頁對話框包括向導對話框和一般屬性頁對話框兩類,上一節講了如何創建并顯示向導對話框,本節將繼續介紹一般屬性頁對話框的創建和顯示。
實際上,一般屬性頁對話框的創建和顯示過程和向導對話框是很類似的。將上一節中的向導對話框進行少量修改,使其成為一般屬性頁對話框。
一般屬性頁對話框的創建步驟:
1、創建屬性頁對話框資源
屬性頁對話框資源的創建方法同向導對話框是一樣的,上一講中的對話框資源不需要進行任何修改。
2、創建屬性頁類
屬性頁類的創建和向導對話框的屬性頁類也基本一樣,只是一般屬性頁對話框中不需要“下一步”和“完成”等按鈕,所以上一講中屬性頁類的OnSetActive和OnWizardFinish等重載函數可以去掉。即CSummandPage類中的OnSetActive函數、CAddPage類中的OnSetActive函數和OnWizardFinish函數可以刪除或注釋掉。其他部分不需要做任何修改。
3、創建屬性列表類
創建屬性列表類的過程同向導對話框屬性表類是一樣的,所以上一講中的CAddSheet類不需要修改。
4、顯示一般屬性頁對話框
上一講中向導對話框的顯示是在OnBnClickedInstructButton函數中實現的,其中語句sheet.SetWizardMode()旨在設置屬性表為向導對話框模式,所以顯示一般屬性頁對話框時不需要調用SetWizardMode成員函數。另外,我們可以將屬性頁對話框的標題設置為“使用說明”,在構造屬性表對話框對象時將此字符串作為構造函數的參數傳入。OnBnClickedInstructButton函數修改如下:
C++代碼:
這樣一般屬性頁對話框的創建和顯示就講完了,我們運行下程序,在結果對話框上點“使用說明”按鈕看看效果吧:
再總結下,一般屬性頁對話框和向導對話框的創建和顯示的不同包括,是否需要OnSetActive和OnWizardFinish等重載函數,是否需要調用屬性表類的SetWizardMode函數設置為向導對話框模式。
?
轉載于:https://www.cnblogs.com/mupiaomiao/p/6222493.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 复杂控件
- 下一篇: ThinkPhp知识大全(非常详细)