MFC Tab控件的使用
来源:互联网 发布:岂可及乎中及的意思 编辑:程序博客网 时间:2024/04/30 06:16
一、Tab控件
二、应用:
Tab控件的好处是,可以减少程序的排放空间,让用户操作也是很方便的,一幕了然。
三、实现步骤
步骤一:建一个MFC的向导,工程类型为基本的对话框,取名为TabcontrolTest
步骤二:对话框中放入一个Tabcontrol控件(IDC_TABTEST),关联一个变量,取名m_tab;再插入2个资源对话框。如下图
分别设置对话框的属性为 style为child(目的为了使自己能嵌入到其他的控件中,后面有说明),border:设置为none(这个就是为了好看,不信得话你可以不设置这个属性),去掉Title Bar 这个选项
步骤三:分别为这2个对话框,关联一个类,类名分别为CPara1, CPara2,在这2个对话框中分别放个按钮或者文本之类的东西,
步骤四:回到CTabcontrolTestDlg类中,添加2个成员变量,分别是2个对话框的成员变量,即: CPara1 m_para1;CPara2 m_para2; 并且在CPP文件中添加#include " CPara1.h"和#include " CPara2.h " 。
步骤五:在CTabcontrolTestDlg类中初始化OnInitDialog()函数中添加如下函数。
//TODO: 在此添加额外的初始化代码 m_tab.InsertItem(0,_T("参数一")); m_tab.InsertItem(1,_T("参数二")); m_para1.Create(IDD_PARA1,GetDlgItem(IDC_TABTEST)); m_para2.Create(IDD_PARA2,GetDlgItem(IDC_TABTEST)); //获得IDC_TABTEST客户区大小 CRect rs; m_tab.GetClientRect(&rs); //调整子对话框在父窗口中的位置 rs.top+=2; rs.bottom-=25; rs.left+=2; rs.right-=4; //设置子对话框尺寸并移动到指定位置 m_para1.MoveWindow(&rs); m_para2.MoveWindow(&rs); //分别设置隐藏和显示 m_para1.ShowWindow(true); m_para2.ShowWindow(false); //设置默认的选项卡 m_tab.SetCurSel(0);
步骤六:当然了,当你点击Tabcontrol控件标签页的时候会触发OnSelchange消息,如果不重载这个消息的时候,对话框就会只显示CPara1,而不显示CPara1,页面也不会切换,我在刻意在这个消息映射函数中添加我们自己的处理过程。在Tab Contronl添加事件“OnSelchange消息”再在该响应函数中添加代码,如下:
void CTabcontrolTestDlg::OnTcnSelchangeTabtest(NMHDR *pNMHDR, LRESULT *pResult){ // TODO: 在此添加控件通知处理程序代码 int CurSel = m_tab.GetCurSel(); switch(CurSel) { case 0: m_para1.ShowWindow(true); m_para2.ShowWindow(false); break; case 1: m_para1.ShowWindow(false); m_para2.ShowWindow(true); break; default: ; } *pResult = 0;}
七:程序界面如下图
0 0
- MFC Tab控件的使用
- mfc tab控件使用
- MFC tab控件使用
- mfc中tab控件的使用
- MFC:Tab Control 控件的使用
- MFC tab控件的使用[zz]
- MFC:Tab Control 控件的使用
- mfc 中 Tab Control 控件的使用
- MFC 对话框中tab控件的使用
- MFC Tab Control控件的详细使用
- MFC中Tab控件的使用详解
- MFC中Tab控件的使用详解
- MFC Tab Control控件的详细使用
- MFC:Tab Control 控件的使用
- MFC:Tab Control 控件的使用
- MFC:Tab Control 控件的使用
- MFC:Tab Control 控件的使用
- MFC:Tab Control 控件的使用
- 黑马程序员之java编程基础3
- dedecms V5.7笔记:子栏目的调用及其文章数量统计
- 排序算法总结
- 运行时改变android控件颜色
- xml 特殊字符
- MFC Tab控件的使用
- 在myEclipse安装Aptana,Aptana插件版Zip包下载方法
- IOS开发的适配问题
- tomcat如何配置懒加载 每次更改不用重新启动服务器
- hdu1215
- EhCache WebCache 与 SpringMVC集成时 CacheManager冲突的问题
- 非管理员权限,没有选择记录
- LeetCode 019 Remove Nth Node From End of List
- OrangeUI For FireMonkey介绍