程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 使用屬性對話框

使用屬性對話框

編輯:關於C語言

 

屬性對話框不同於普通對話框的是它能同時提供多個選項頁,而每頁都可以由資源編輯器以編輯對話框的方式進行編輯,這樣給界面開發帶來了方便。同時使用上也遵守普通對話框的規則,所以學習起來很方便。屬性對話框由兩部分構成:多個屬性頁(CPropertyPage)和屬性對話框(CPropertySheet)。

首先需要編輯屬性頁,在資源編輯器中選擇插入,並且選擇屬性對話框後就可以插入一個屬性頁,如圖,

或者選擇插入一個對話框,然後將其屬性中的Style設置為Child,Border設置為Thin也可以,如圖。

然後根據這個對話框資源生成一個新類,在選擇基類時選擇CPropertyPage,ClassWizard會自動生成相關的代碼。

而對於CPropertySheet也需要生成新類,並且將所有需要加入的屬性頁對象都作為成員變量。屬性對話框也分為有模式和無模式兩種,有模式屬性對話框使用DoModal()創建,無模式屬性對話框使用Create()創建。下面的代碼演示了如何創建屬性對話框並添加屬性頁:

//修改CPropertySheet派生類的構造函數為如下形式
CSheet::CSheet()
         :CPropertySheet("test sheet", NULL, 0)
{
         m_page1.Construct(IDD_PAGE_1);
         m_page2.Construct(IDD_PAGE_2);
         AddPage(&m_page1);
         AddPage(&m_page2);
}
//創建有模式屬性對話框
void CMy56_s1Dlg::OnMod() 
{
         CSheet sheet;
         sheet.DoModal();
}
//創建無模式屬性對話框
void CMy56_s1Dlg::OnUnm() 
{
         C						

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved