日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

标签页式样的对话框参考

發布時間:2025/3/12 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 标签页式样的对话框参考 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://blog.csdn.NET/akof1314/article/details/5979405

Visual Studio 2008 SP1自帶的示例里面,有個工程為PropSheetDemo,此示例介紹了CMFCPropertySheet屬性表的使用,截圖如下:http://img.blog.csdn.net/20141112163539593?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvU2F5ZXNhbg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

下面以VS2008SP1為測試環境,學習使用方法:
1.新建基于對話框工程;
2.新建一個類,基類為CMFCPropertySheet,名稱如CMyPropertySheet
3.添加兩個對話框資源,雙擊對話框為其添加類,選擇基類為CPropertyPage(因為這里選不了CMFCPropertyPage),名稱分別如CPage1Cpage2
4.然后替換所有的CPropertyPage成為CMFCPropertyPage
5.在CMyPropertySheet.h頭文件里添加兩個屬性頁的頭文件,然后聲明兩個屬性頁對象:

CPage1?m_Page1;?
CPage2?m_Page2;?

在CMyPropertySheet.cpp的構造函數里面,添加如下語句:

m_psh.pszCaption=_T("屬性表對話框標題");?//設置屬性表標題?
m_psh.dwFlags?|=?PSH_NOAPPLYNOW?;?//去掉“應用”按鈕?
m_psh.dwFlags?&=~PSH_HASHELP;?//去掉“幫助”按鈕?
SetLook(PropSheetLook_List);//樣式外觀設置,這里為列表型?
AddPage(&m_Page1);?
AddPage(&m_Page2);?

6.在應用程序對話框頭文件里面,添加屬性表頭文件

#include?"MyPropertySheet.h"?

然后聲明一個對象:

CMyPropertySheet?m_MySheet;?

接著在對話框實現文件里面,按鈕的單擊事件里如下:

if?(m_MySheet.DoModal()?==?IDOK)?
????AfxMessageBox(_T("點了確定"));?
else?
????AfxMessageBox(_T("點了取消"));?

7.完成編譯,就可以看到效果。其中對于屬性表對話框的外觀框架各種設置,請看下面的結構體。

PROPSHEETHEADER結構體,定義框架和屬性表頁。

PROPSHEETHEADER結構體:

typedef?struct?{?
??DWORD??dwSize;????//這個結構的大小(字節)?
??DWORD??dwFlags;????//標志位,指出創建屬性表頁時的選項?
??HWND??hwndParent;????//屬性表父窗口的句柄?
??HINSTANCE??hInstance;????//加載圖標或標題字符串資源的實例句柄,如果pszIcon或pszCaption成員確定了資源加載,該成員必須指定?
??union?{?
????HICON???hIcon;????//用在屬性表對話框的標題欄小圖標的圖標句柄,如果dwFlags成員不包括PSH_USEHICON,這個成員被忽略?
????LPCTSTR??pszIcon;????//用在屬性表對話框的標題欄小圖標的圖標資源,如果dwFlags成員不包括PSH_USEICONID,這個成員被忽略?
??}?;?
??LPCTSTR??pszCaption;????//屬性表對話框的標題,如果dwFlags成員包括PSH_PROPTITLE,字符串“屬性”是插入標題的開頭?
??UINT??nPages;????//屬性頁phpage數組的元素數量?
??union?{?
????UINT???nStartPage;????//當屬性表對話框創建后的初始頁,從0開始的索引頁?
????LPCTSTR??pStartPage;????//當屬性表對話框創建后的初始頁的名稱?
??}?;?
??union?{?
????LPCPROPSHEETPAGE?ppsp;????//定義屬性表上的頁的PROPSHEETPAGE結構數組的指針?
????HPROPSHEETPAGE???*phpage;????//指向屬性表頁的句柄數組指針,每個句柄必須是在調用CreatePropertySheetPage函數之前創建,如果dwFlags成員包括PSH_PROPSHEETPAGE,phpage被忽略,應設置為NULL?
??}?;?
??PFNPROPSHEETCALLBACK?pfnCallback;????//指向當屬性表被初始化時調用應用程序定義的回調函數,如需回調函數的信息,看PropSheetProc函數的說明,如果dwFlags成員不包括PSH_USECALLBACK,這個成員被忽略?
#if?(_WIN32_IE?>=?0x0400)?
??union?{?
????HBITMAP?hbmWatermark;????//版本5.80或更高版本,水印位圖的句柄,如果dwFlags成員不包括PSH_USEHBMWATERMARK,這個成員被忽略?
????LPCTSTR?pszbmWatermark;?//版本5.80或更高版本,位圖資源用作水印,如果dwFlags成員包括PSH_USEHBMWATERMARK,這個成員被忽略?
??}?;?
??HPALETTE??hplWatermark;?//版本5.80或更高版本,HPALETTE結構用做繪制水印位圖和/或頭位圖,如果dwFlags成員不包括PSH_USEHPLWATERMARK,這個成員被忽略?
??union?{?
????HBITMAP?hbmHeader;????//版本5.80或更高版本,頭位圖句柄,如果dwFlags成員不包括PSH_USEHBMHEADER,這個成員被忽略?
????LPCSTR??pszbmHeader;????//版本5.80或更高版本,位圖資源使用為頭位圖,如果dwFlags成員包括PSH_USEHBMHEADER,這個成員被忽略?
??}?;?
#endif??
}?PROPSHEETHEADER,?*LPPROPSHEETHEADER;?

?其中的dwFlags標志位的選項參數如下:

含義
PSH_DEFAULT缺省模式
PSH_AEROWIZARD0x00004000 Version 6.00 and Windows Vista,透明風格
PSH_HASHELP顯示“幫助”按鈕
PSH_HEADER版本5.80和更高版本。頭位圖表示用于Wizard97向導
PSH_HEADERBITMAP0x00004000 Version 6.00 and Windows Vista,該pszbmHeader成員指定一個在標題區域顯示位圖
PSH_MODELESS指定創建非模態標簽對話框
PSH_NOAPPLYNOW“應用”按鈕不可見
PSH_NOCONTEXTHELP版本5.80和更高版本,上下文敏感幫助按鈕不可見
PSH_NOMARGIN0x00004000 Version 6.00 and Windows Vista,不在框架和頁之間插入邊距
PSH_PROPSHEETPAGE使用ppsp成員,并且忽略phpage成員
PSH_PROPTITLE指定標簽對話框的標題文字內容
PSH_RESIZABLE該向導允許由用戶調整。最大化和最小化按鈕出現在向導的框架和框架是相當大
PSH_RTLREADING設定標簽對話框標題欄文字的閱讀習慣(阿拉伯或希伯萊習慣)
PSH_STRETCHWATERMARK伸展在Microsoft Internet Explorer 4.0兼容Wizard97式向導水印
PSH_USECALLBACK使用回調函數
PSH_USEHBMHEADER版本5.80或更高版本。獲得從hbmHeader成員,而不是pszbmHeader成員頭位圖
PSH_USEHBMWATERMARK版本5.80或更高版本。獲得從hbmWatermark成員水印圖而不是pszbmWatermark成員
PSH_USEHICON使用的hIcon作為在屬性表對話框的標題欄小圖標
PSH_USEHPLWATERMARK版本5.80或更高版本。采用HPALETTE結構所指向hplWatermark成員而不是默認的調色板畫出一個Wizard97向導的水印位圖和/或頭位圖
PSH_USEICONID用作圖標的資源名稱pszIcon加載和使用中的屬性表對話框的標題欄小圖標
PSH_USEPAGELANG版本5.80或更高版本。指定該屬性表語言將采取從第一頁的資源
PSH_USEPSTARTPAGE采用pStartPage成員,而不是nStartPage成員在顯示屬性表的初始頁面
PSH_WATERMARK版本5.80或更高版本。指定水印位圖將被用于一個網頁上有PSP_HIDEHEADER風格Wizard97向導
PSH_WIZARD創建一個向導屬性表。當使用PSH_AEROWIZARD,還必須設置此標志
PSH_WIZARD97版本5.80或更高版本。創建一個Wizard97風格的屬性表,它支持在室內網頁的標頭和關于外部頁面左側位圖
PSH_WIZARDCONTEXTHELP添加一個上下文敏感的幫助按鈕("?")
PSH_WIZARDHASFINISH始終顯示在向導的Finish按鈕
PSH_WIZARD_LITE版本5.80或更高版本。使用Wizard-lite的風格。這種風格是相似的外觀PSH_WIZARD97,但它是實現更像PSH_WIZAR

?





擴展閱讀:
1.CMFCPropertySheet Class?http://msdn.microsoft.com/en-us/library/bb981937.aspx
2.PROPSHEETHEADER Structure?http://msdn.microsoft.com/en-us/library/bb774546%28VS.85%29.aspx
3.Visual C++2010中CMFCPropertySheet的用法?http://blog.163.com/xu_chao2000/blog/static/277706102010430338431/




//自己寫的測試

Cdlg1 dlg1;
Cdlg2 dlg2;
Cdlg3 dlg3;
//CPropertySheet dlg(IDS_CDRSETTINGS,this/*AfxGetMainWnd()*/,0); //第三個參數表示默認初始顯示第幾個table頁
CMFCPropertySheet dlg(IDS_CDRSETTINGS,this/*AfxGetMainWnd()*/,0); //第三個參數表示默認初始顯示第幾個table頁?




dlg.m_psh.dwFlags = dlg.m_psh.dwFlags|PSH_NOAPPLYNOW;//去掉應用按鈕


dlg.m_psh.dwFlags = dlg.m_psh.dwFlags &~ PSH_HASHELP; //如果要去掉幫助按鈕,一定要每個屬性頁都去掉該按鈕
dlg1.m_psp.dwFlags&= ~PSP_HASHELP;
dlg2.m_psp.dwFlags&= ~PSP_HASHELP;
dlg3.m_psp.dwFlags&= ~PSP_HASHELP;


dlg.SetLook(CMFCPropertySheet::PropSheetLook::PropSheetLook_List);//樣式外觀設置,這里為列表型?
dlg.m_psh.pszCaption=_T("屬性表對話框標題"); //設置屬性表標題?
?


dlg.AddPage(&dlg1);
dlg.AddPage(&dlg2);
dlg.AddPage(&dlg3);
dlg.DoModal();

總結

以上是生活随笔為你收集整理的标签页式样的对话框参考的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91人人视频| 97免费视频观看 | 一道本在线观看视频 | 国产在线视频导航 | 日韩欧美一卡二卡 | www.99爱 | 婷婷色综合网 | 一级黄色片欧美 | 久久久久久亚洲中文字幕无码 | 亚洲欧美a| 一区二区三区日韩电影 | 欧美情侣性视频 | 69av视频在线观看 | 捅肌肌| 91av毛片| 少妇av一区 | 亚洲春色在线观看 | 国产精品乱码一区二区视频 | 中文字幕免费在线播放 | 免费观看美女裸体网站 | 蜜桃在线一区二区三区 | 9999免费视频 | 97夜夜操| 亚洲精品成a人在线观看 | 日本美女毛茸茸 | 尤物av在线 | 日韩精品一区二区三区国语自制 | 久久99久久98精品免观看软件 | 欧美日韩少妇精品 | 中文字幕22页| 91热爆在线| 亚洲逼| 色婷av | 国产专区自拍 | 熟女少妇一区二区 | 99久久精品一区 | 亚洲免费三级 | 天天操人人射 | 成人a区 | 波多野结衣绝顶大高潮 | 日韩欧美一区二区三区在线观看 | 成人夜视频 | 日本后进式猛烈xx00动态图 | 国产传媒欧美日韩 | 中文字幕一级二级三级 | 一本黄色片 | 国产人成精品 | 欧美人与动牲交a欧美精品 欧美三级在线看 | 成人在线播放视频 | 九九九九国产 | 欧美999 | 日韩香蕉视频 | 人成在线视频 | 日韩欧美一区二区三区在线 | chinese中国性按摩hd | av猫咪| 亚洲风情av | 三上悠亚ed2k | 日韩欧美aⅴ综合网站发布 国产成人一区二区三区小说 | 欧美粗暴jizz性欧美20 | 国产一区二区视频在线免费观看 | 秋霞国产精品 | 91黄色免费| 欧美精品1区 | 婷婷综合亚洲 | 99re99热| 国产三级视频网站 | 国产精品人人爽人人爽 | 欧美日韩高清在线 | 亚洲精品久久久久久久蜜桃臀 | 欧美偷拍第一页 | 亚洲美女视频网站 | 日韩无码电影 | 9i精品福利一区二区三区 | 天堂色网 | 少妇无码一区二区三区免费 | 成人免费视频一区 | av色先锋| 成人网址在线观看 | 黑人操中国女人视频 | 亚洲av永久无码国产精品久久 | 91久久国产精品 | 性生交大片免费看l | 午夜在线精品偷拍 | 日韩精品一区二区三区无码专区 | 精品人伦一区二区三 | 怎么可能高潮了就结束漫画 | 激情第四色 | 色屋在线 | 色婷婷综合久久久久中文一区二区 | 91久久精| 欧类av怡春院 | 国产精品久久久久久久久 | 久久久久久中文 | 成人av番号网 | 在线播放精品 | 日本韩国欧美中文字幕 | 精品人妻一区二区三区四区五区 | 性chinese天美传媒麻 |