建立乙個嚮導式對話方塊

2021-10-05 20:00:42 字數 2020 閱讀 9893

(5)在「資源檢視」中,刪除對話方塊idd_wizarddialogtest_dialog,並新增3個對話方塊,設標題分別為「第一步」,「第二步」,「第三步」。

(6)雙擊開啟idd_dialog1,刪除「確定」「取消」按鈕,在對話方塊右擊,選擇「新增類」,繼承於「cpropertypage」的子類cpage1,新增cstatic text和edit control。右擊「屬性」,把cstatic text的caption修改為「姓名」,並為編輯框edit control新增乙個cstring變數m_strname。

(7)雙擊開啟idd_dialog2,刪除「確定」「取消」按鈕,在對話方塊右擊,選擇「新增類」,繼承於「cpropertypage」的子類cpage2,新增cstatic text和edit control。右擊「屬性」,把cstatic text的caption修改為「工作單位」,並為編輯框edit control新增乙個cstring變數m_strunit。

(8)雙擊開啟idd_dialog3,刪除「確定」「取消」按鈕,在對話方塊右擊,選擇「新增類」,繼承於「cpropertypage」的子類cpage3,新增2個cstatic text和2個edit control。右擊「屬性」,把cstatic text的caption分別修改為「姓名」和「工作單位」,並為編輯框edit control新增cstring變數m_strname和m_strunit,且都設為唯讀。

(9)開啟sheetwizard.h,為為新增3個成員變數:

cpage1 m_page1;

cpage2 m_page2;

cpage3 m_page3;

並新增相應的標頭檔案,然後在csheetwizard的2個建構函式中新增:

addpage

(&m_page1)

;addpage

(&m_page2)

;addpage

(&m_page3)

;setwizardmode()

;//設定嚮導模式

(10)為cpage1新增虛函式onsetactive,新增**如下:

bool cpage1::

onsetactive()

(11)為cpage2新增虛函式onsetactive,新增**如下:

bool cpage2::

onsetactive()

(12)為cpage3新增虛函式onsetactive,新增**如下:

bool cpage3::

onsetactive()

在page3.cpp開頭新增:

#include

"sheetwizard.h"

lresult cpage1::

onwizardnext()

return cpropertypage::

onwizardnext()

;}

同理,cpage2也要新增虛函式onwizardnext,新增**如下:

lresult cpage2::

onwizardnext()

return cpropertypage::

onwizardnext()

;}

cpage3要新增虛函式onwizardfinish,以此響應單擊finish按鈕的事件,新增**如下:

bool cpage3::

onwizardfinish()

儲存並執行工程,執行結果如圖所示:

彈出乙個對話方塊

showmodaldialog 開啟獨佔方式網頁對話方塊 window.showmodaldialog 開啟乙個獨佔方式網頁對話方塊 話法 syntax variant object.showmodaldialog surl varguments sfeatures 引數 描述 surl 指點url...

QT學習之路 建立乙個對話方塊

q object 這是乙個巨集,凡是定義訊號槽的類都必須宣告這個巨集.函式tr 全名是qobject tr 被他處理過的字串可以使用工具提取出來翻譯成其他語言,也就是做國際化使用。對於qt學習之路 qt學習之路 7 建立乙個對話方塊 上 這個程式。編譯出現 invalid use of incomp...

對話方塊程式向另乙個對話方塊傳送訊息

兩個不同的程式之間傳送訊息,這兩個程式都是對話方塊程式。先查詢另外乙個程式的視窗控制代碼,然後通過控制代碼傳送訊息。1 新建乙個基於對話方塊的mfc應用程式searchtest,刪除對話方塊中原有控制項。2 定義乙個訊息巨集 define um use message wm user 100 3 在...