1. 新建一个MFC工程,取名xyTabControl,选择Dialog based,然后Finish。
2. 删除对话框上默认添加的三个控件。添加Tab Control控件并在Property属性中设置ID为IDC_TAB1,添加变量m_tabctrl,类型为CTabCtrl。
3. 在对话框的初始化函数OnInitDialog里面添加如下代码:
<wbr><wbr>m_tabctrl.InsertItem(0,"memo0");<wbr><wbr><wbr><wbr><wbr><wbr>//添加参数一选项卡<wbr><br><wbr><wbr>m_tabctrl.InsertItem(1,"memo1");<wbr><wbr><wbr><wbr><wbr>//添加参数二选项卡</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
4.在对话框资源里面添加两个对话框资源, ID分别命名为IDD_PARA1, IDD_PARA2。字体为宋体, 字号为9, style为Child, Border为None, 调整高度宽度到适中尺寸。再分别为其添加对应的基于CDialog类CPara1, CPara2。
5. 在CxyTabControlDlg类中添加两个成员变量m_para1, m_para2, 分别是两个子对话框的实例. 代码如下:
CPara2 m_para2;
CPara1 m_para1;
6. 布置IDD_PARA1和IDD_PARA2对话框 如下图:
7. 在IDD_xyTabControl_DIALOG对话框的初始化函数OnInitDialog里面添加如下代码:
//关联对话框,并且将IDC_TABTEST控件设为父窗口
<wbr><wbr><wbr>m_para1.Create(IDD_PARA1,GetDlgItem(IDC_TAB1));<br><wbr><wbr><wbr>m_para2.Create(IDD_PARA2,GetDlgItem(IDC_TAB1));</wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr>//获得IDC_TABTEST客户区大小</wbr></wbr></wbr>
<wbr><wbr><wbr>CRect rs;<br><wbr><wbr><wbr><wbr>m_tabctrl.GetClientRect(&rs);<br><wbr><wbr><wbr>//调整子对话框在父窗口中的位置<br><wbr><wbr><wbr>rs.top += 20;<br><wbr><wbr><wbr>rs.bottom -= 20;<br><wbr><wbr><wbr>rs.left += 1;<br><wbr><wbr><wbr>rs.right -= 2;<br><wbr><wbr><wbr>//设置子对话框尺寸并移动到指定位置<br><wbr><wbr><wbr>m_para1.MoveWindow(&rs);<br><wbr><wbr><wbr>m_para2.MoveWindow(&rs);<br><wbr><wbr><wbr>//分别设置隐藏和显示<br><wbr><wbr><wbr>m_para1.ShowWindow(1);<br><wbr><wbr><wbr>m_para2.ShowWindow(0);</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr>//设置默认的选项卡<br><wbr><wbr><wbr>m_tabctrl.SetCurSel(0);</wbr></wbr></wbr></wbr></wbr></wbr>
8. 添加Tab Control控件的TCN_SELCHANGE事件响应函数OnSelchangeTabtest(NMHDR* pNMHDR, LRESULT* pResult) ,函数体代码如下:
<wbr><wbr><wbr>int CurSel = m_tabctrl.GetCurSel();<br><wbr><br><wbr><wbr><wbr>switch(CurSel)<br><wbr><wbr><wbr>{<br><wbr><wbr><wbr><wbr>case 0:<br><wbr><wbr><wbr><wbr><wbr><wbr>m_para1.ShowWindow(true);<br><wbr><wbr><wbr><wbr><wbr><wbr>m_para2.ShowWindow(false);<br><wbr><wbr><wbr><wbr>break;<br><wbr><wbr><wbr><wbr>case 1:<br><wbr><wbr><wbr><wbr><wbr><wbr><wbr>m_para1.ShowWindow(false);<br><wbr><wbr><wbr><wbr><wbr><wbr>m_para2.ShowWindow(true);<br><wbr><wbr><wbr><wbr>break;<br><wbr><wbr><wbr><wbr><wbr>default:<br><wbr><wbr><wbr><wbr>;</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
<wbr><wbr><wbr><wbr>*pResult = 0;<br><wbr><wbr><wbr>}<br>9.好了,完成,这个小程序很简单,效果如下图:</wbr></wbr></wbr></wbr></wbr></wbr></wbr>
源码下载
参考推荐:
VC中TabControl控件使用方法
MFC中TAB CONTROL的使用
分享到:
相关推荐
基于CFORMVIEW的SDI文档,在主对话框运用tab control,并做简单处理。
Vc6 tabcontrol实例工程代码
vc6 如鹏网win32对话框向导工程 tab control控件使用demo
VC 6.0 WinForm窗体TAB标签的使用范例,使用for循环向标签控件中插入项,获得当前标签项,在前几年TAB刚流行的时候,这些类似的例子下载量很大的,现在这些已经成为VC 窗体编程的“基本功”了,呵呵,不过有些VC新手...
vc2010中tab control使用的Demo
VC创建不规则窗体:创建多边形轮廓的窗体和自定义轮廓的窗体
主要在VS2008开发环境,基于MFC 平台读取和写INI文件以及使用VC Tab控件
skinsyse界面怪异漂亮 vc制作不规则窗体界面
这个VC 窗体实例集中展示了窗体中众多的常用元素的用法,有些是相当有用的,比如TAB窗体标签元素、Dialog对话框元素,还有按钮、GroupBox、复选框Checkbox、文件浏览窗口等,在VC 中如何实现这些各种用途的对话框呢...
在网上找了很久没找到可以改变标签颜色的例子,就按网上的方法做了个例子,可以改变标签和背景的颜色,做成和主框背景色一样。有需要的可以拿去参考。
VC控件大小随窗体改变.doc 控件大小自动适应窗口
MFC Tab Control控件的应用 VC2008编译通过。
详细介绍VC/MFC中使用Tab Control控件的方法
vc MFC tab控件的美化,标签页美化。
VC 透明窗体实,VC 透明窗体实例,VC 透明窗体实例,VC 透明窗体实例,VC 透明窗体实例
VC做的一个简单开机窗体 可以简单设置标题 和内容
一个典型且传统,窗体TAB标签内容切换VC 6.0代码,现在这已经不算是稀罕功能了,这是最基本的TAB标签实现方法,希望对VC 爱好者有所帮助。
1.6 界面窗体应用实例 36 实例022 背景为渐变色的程序界面 36 实例023 椭圆形的程序界面 38 实例024 自绘窗体界面 39 实例025 类似Windows XP的程序界面 44 实例026 窗体融合技术 46 实例027 限制...
VC 设计制作异形的不规则窗口实例代码,实现了位图窗体、椭圆窗体、异形不规则窗体,用字的轮廓来修饰窗体,窗体看上去是文字的样式,用BMP位图去透明元素化生成不规则窗口,还有椭圆窗口的实现,我想这些例子对于...