原文链接(有修改):http://blog.sina.com.cn/s/blog_6a1cdb3f0101llcw.html

1.新建一个MFC工程
取名PageSheet,选择Dialog based,然后Finish。

2.在对话框资源中插入两个对话框IDD_DIALOG1、IDD_DIALOG2,作为两个子页。

3.为这两个对话框增加两个类,分别为CPage1和CPage2,其基类选择CPropertyPage。

4.增加一个属性页类CMySheet, 其基类选择CPropertySheet。

5.在类CMySheet中增加两个成员变量m_page1,类型为CPage1,m_page2,类型为CPage2。
如:

public:CPage1 m_page1;CPage2 m_page2;

6.在类CMySheet的构造函数中添加如下两句,增加两个页。
如:

CMySheet::CMySheet()
{AddPage(&m_page1);AddPage(&m_page2);
}

ps:CMySheet类原先的两个带参构造函数,可以删除,改成以上所示无参构造函数。

7.在类CPageSheetApp的初始化函数InitInstance()中,将原来声明的对象去掉。改为属性页类对象声明。
如:

//CPageSheetDlg dlg;CMySheet dlg;

8.添加头文件。
①“PageSheet.cpp”文件中添加头文件“MySheet.h”
②“MySheet.h”中添加头文件“CPage1.h”和“CPage2.h”

9.为属性页类添加初始化函数。
如:

BOOL CMySheet::OnInitDialog()
{//属性页对话框初始化BOOL bResult =CPropertySheet::OnInitDialog();//设置窗口标题SetWindowText("Page Sheet");//去除多余的控件(确定、取消、应用、帮助)CWnd *pWnd = GetDlgItem(IDOK);pWnd->ShowWindow(SW_HIDE);pWnd = GetDlgItem(ID_APPLY_NOW);pWnd->ShowWindow(SW_HIDE);pWnd = GetDlgItem(IDHELP);pWnd->ShowWindow(SW_HIDE);pWnd = GetDlgItem(IDCANCEL);pWnd->ShowWindow(SW_HIDE);RECT  rc; //调整属性页对话框的大小 GetWindowRect (&rc); MoveWindow(rc.left,rc.top,rc.right-rc.left,rc.bottom-rc.top-30); //调整窗口 return bResult;
}

10.可以将多余的对话框、文件删除。
对话框:程序初始对话框IDD_PAGESHEET_DIALOG
文件:CPageSheetDlg.h ,CPageSheetDlg.cpp

MFC多标签页对话框相关推荐

  1. 对话框中加入标签页的5种方法

    (2008-07-08 15:25 博客搬家拾遗) 标签页是MFC控件里有一点难用的东西,今天看到了一篇相关文章,觉得写得比较系统,而且浅显易懂,特地转来,与大家分享的同时也留备自己以后查用. (以下 ...

  2. MFC标签页控件的使用

    随笔- 11  文章- 0  评论- 3 MFC标签页控件的使用 1.在对话框中添加一个标签页控件,并为此控件关联一个CTabCtrl类变量m_tabctrl. 2.创建若干个对话框资源作为标签页控件 ...

  3. MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)

    前面讲了模态对话框和非模态对话框,本节来将一种特殊的对话框--属性页对话框. 属性页对话框的分类 属性页对话框想必大家并不陌生,XP系统中桌面右键点属性,弹出的就是属性页对话框,它通过标签切换各个页面 ...

  4. MFC中使用CTabCtrl或CPropertySheet实现标签页

    CTabCtrl 1.先建立一个MFC应用程序,然后在资源管理器中新建一对话框,并为它建立对应的类,然后从工具箱里面把Tab Control控件放入该对话框中. 再在对话框类中,声明一个CTabCtr ...

  5. MFC编程入门之十五(对话框:一般属性页对话框的创建及显示)

    属性页对话框包括向导对话框和一般属性页对话框两类,上一节讲了如何创建并显示向导对话框,本节将继续介绍一般属性页对话框的创建和显示. 实际上,一般属性页对话框的创建和显示过程和向导对话框是很类似的.将上 ...

  6. 鸡啄米vc++2010系列12(属性页对话框)

    前面讲了模态对话框和非模态对话框,本节开始鸡啄米讲一种特殊的对话框--属性页对话框.另外,本套教程所讲大部分对VC++各个版本均可适用或者稍作修改即可,但考虑到终究还是基于VS2010版本的,所以将& ...

  7. easyui打开新的选项卡_Easyui Tabs 标签页/选项卡_EasyUI 插件

    通过 $.fn.tabs.defaults 重写默认的 defaults. The tabs display a collection of panel. It shows only one tab ...

  8. MFC中的模态对话框与非模态对话框

    模态对话框创建: MyDialog mydlg; mydlg.DoModal() 当前只能运行此模态对话框,且停止主窗口的运行,直到模态对话框退出,才允许主窗口运行. 模态对话框的关闭顺序: OnCl ...

  9. ocx控件 postmessage消息会消失_实战经验:如何检测CMFCTabCtrl控件标签页切换事件...

    MFC库中经常会使用到的一个控件是Tab标签页控件,这个控件在展现多个平级数据集非常合适. 与控件对应的,是MFC库中的两个类:CMFCTabCtrl和CMFCBaseTabCtrl,其中CMFCTa ...

最新文章

  1. RabbitMQ 消息确认机制 以及 原理解析
  2. Hibernate的@Temporal注解处理时间日期类型的映射关系
  3. ServletContextListener 解析用法
  4. DataTabel中关于ImpotRow的一点尝试
  5. 浅谈html的语义化和一些简单优化,html标签语义化
  6. P6619-[省选联考2020A/B卷]冰火战士【树状数组二分】
  7. java 迁移数据_Java 10迁移建议
  8. python排序方法_python内置的排序方法
  9. ribbon 配置 动态更新_SpringCloud实战三-Ribbon
  10. 利用Oracle Enterprise Manager Cloud Control 12c创建DataGuard Standby
  11. Redis入门完整教程:CacheCloud接入应用
  12. 计算机平面设计培训学费,个旧计算机平面设计学校学费多少
  13. php获取文件名和后缀名
  14. 此计算机 未识别的网络,未识别的网络无网络访问解决方法(图文)
  15. pythonrefprop怎么设置_Refprop调用Excel设置步骤
  16. 有哪些「神奇」的数据获取方式?
  17. 根据图片名字获取Drawable对象
  18. 在双曲空间进行细粒度实体分类
  19. UCloud优刻得创始人季昕华:深耕云计算,做隐私计算赛道的“奇袭军”
  20. 周大福向北京体育大学教育基金会捐赠1.2亿元设立“郑家纯冠军培养基金”

热门文章

  1. mongdb学习笔记
  2. shell脚本备忘录
  3. 关于viewport我自己的理解
  4. getopt长参数(长选项)获取不到参数BUG
  5. nginx的常规配置
  6. [Z]建國中學 2012 年資訊科培訓網站
  7. 执着的力量——读《钢铁是怎样炼成的》有感
  8. NumPy - np.linspace()
  9. 阿里云mariadb无法启动问题
  10. Codeforces Gym 100269G Garage 数学