CTabCtrl - 如何使用TabCtrl控件
CTabCtrl - 如何使用TabCtrl控件
建立一个基于对话框的MFC应用程序TabCtrlTest
Step 1:在资源视图中,新建对话框资源,资源ID:IDD_TabCtrlExample_DLG,添加类:CTabCtrlExamlpeDlg。
Step 2:在对话框视图中加入CTabCtrl控件,资源ID:IDD_TAB1,添加控件变量:m_ctlTabInfo。
Step 3:新建两个对话框:
|
对话框ID |
添加类 |
设置对话框属性 |
补充 |
|
|
对话框1 |
IDD_Test1_DlG |
CTest1 |
Border:None Styles:Child |
界面可自行设计 |
|
对话框2 |
IDD_Test2_DlG |
CTest2 |
在CTabCtrlExamlpeDlg定义两个成员变量:
public:
CTabCtrl m_ctlTabInfo;
CTest1 m_test1Page;//界面1
CTest2 m_test2Page;//界面2
Step 4:重写CTabCtrlExamlpeDlg::OnInitDialog()函数
(类视图下,选中CCTabCtrlExamlpeDlg类,右键属性,单击属性界面右边第一个正方体图标,双击OnInitDialog即可)
BOOL CTabCtrlExamlpeDlg::OnInitDialog()
{
CDialog::OnInitDialog(); // TODO: 在此添加额外的初始
#pragma region 初始化TabCtrl控件
//首先,为各Tab页添加标题
m_ctlTabInfo.InsertItem(,_T("界面一"));
m_ctlTabInfo.InsertItem(,_T("界面二")); //第二,建立各Tab页
m_test1Page.Create(IDD_Test1_Dlg, GetDlgItem(IDC_TAB1));
m_test2Page.Create(IDD_Test2_Dlg, GetDlgItem(IDC_TAB1)); //第三,设置页面的位置在m_ctlTabInfo控件范围内
CRect rc;
m_ctlTabInfo.GetClientRect(rc);
rc.top += ;
rc.bottom -= ;
rc.left += ;
rc.right -= ; m_test1Page.MoveWindow(rc);
m_test1Page.ShowWindow(SW_SHOW);
m_test2Page.MoveWindow(rc);
m_test2Page.ShowWindow(SW_HIDE);
#pragma endregion return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
Step 5:响应TabCtrl控件的TCN_SELCHANGE消息,实现切换页面功能。
(右键TabCtrl控件à添加事件处理程序à选中TCN_SELCHANGE消息à添加编辑)
void CTabCtrlExamlpeDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult)
{
// TODO: 在此添加控件通知处理程序代码
*pResult = ;
switch (m_ctlTabInfo.GetCurSel())
{
case :
m_test1Page.ShowWindow(SW_SHOW);
m_test2Page.ShowWindow(SW_HIDE);
break;
case :
m_test1Page.ShowWindow(SW_HIDE);
m_test2Page.ShowWindow(SW_SHOW);
break;
default:
break;
}
}
CTabCtrl - 如何使用TabCtrl控件的更多相关文章
- MFC TabCtrl 控件修改标签尺寸
注意:无论那种方法,都要先设置Tab控件的Style属性为fixed width. 第一种方法 MFC,tabcontrol控件改变标签大小 - CSDN博客 https://blog.csdn.ne ...
- VC中动态添加控件
VC中动态添加控件 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个 ...
- MFC 动态创建控件
动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个容器,一 ...
- MFC控件CTabCtrl关联变量
1.先建立一个对话框MFC应用程序,然后在工具箱里面把Tab Control控件放到对话框中的合适位置上. 再在对话框类中,将该控件绑定一个变量 用两种方法: 1 ) 自己定义成员变量 CTabCtr ...
- 在CTabCtrl上动态创建CListCtrl控件
m_List.Create(WS_OVERLAPPED|WS_CHILD|WS_VISIBLE|LVS_REPORT|LVS_AUTOARRANGE|LVS_SHOWSELALWAYS|LVS_EDI ...
- Clean小程序(控件消息)
一 . 准备工作 创建一个基于对话框的MFC项目 删除对话框上的工具 二 . 实现将seven图片贴到上面,按一下则换一张图片 1.在资源视图中添加位图资源,通过属性修改图片ID 2.将对话框拉长,防 ...
- 023.MFC_属性页控件(tab control)
属性页控件属性页->选项卡->对话框CTabCtrl一.建立名为tabCtrl的mfc工程,添加Tab Control控件,设置属性ID为IDC_TAB,并添加变量m_tab 在tabCt ...
- Windows 程序设计(4) MFC-02 基本控件-下
1. TabCtrl 标签控件 1.1 创建主窗口 1)CMFCTabControlDlg,拖拽标签控件 2)增加变量 CTabCtrl m_tabCtrl 3)设置相关成员变量和处理函数 CFile ...
- MFC学习 标签页与属性页及各常用控件使用
参考 http://blog.csdn.net/anye3000/article/details/6700023 CTabCtrl: BOOL CTabTestDlg::OnInitDialog() ...
随机推荐
- .NET,你忘记了么?(八)—— 从dynamic到特性误用 [转]
1. 摘要 每个程序员都想写出漂亮的代码,但是什么是漂亮,这个我想每个人都有着自己的看法.那么我就说几种典型的想法: A. 写出别人看不懂的代码,让别人觉得很高深. B. 写出简短的代码 C. 用最新 ...
- Android平台音频信号FFT的实现
转载请标明出处:http://blog.csdn.net/sctu_vroy/article/details/45871823 功能:加载本地SD卡中moveDsp文件夹中的音频文件(包括录音获取文件 ...
- ASP.NET对路径"xxxxx"的访问被拒绝的解决方法小结
异常详细信息: System.UnauthorizedAccessException: 对路径“D:/temp1/MyTest.txt”的访问被拒绝 在windows 2003下,在运行web ...
- 前端新人学习笔记-------html/css/js基础知识点(三)
这断时间家里有点事,上班也有点任务,所以几天没看视频没来更新了.今天来更新一下了. 一:默认样式重置 但凡是浏览默认的样式,都不要使用. body,p,h1,h2,h3,h4,h5,h6,dl,dd{ ...
- android的Home键的监听封装工具类(一)
android的Home键的监听封装: package com.gzcivil.utils; import android.content.BroadcastReceiver; import andr ...
- JS 更改表单的提交时间和Input file的样式
JS转换时间 function renderTime(data) { var da = eval('new ' + data.replace('/', '', 'g').replace('/', '' ...
- 2016-09-06 J2EE基础知识之不知
1.中间件.容器.Web服务器 1.1中间件 中间件是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通.中间件处于操作系统和更高一级应用程序之间. J2EE提出的背景: 1)企业级应用 ...
- JAVA 可视化分析工具 第12节
JAVA 可视化分析工具 第12节 经过前几章对堆内存以及垃圾收集机制的学习,相信小伙伴们已经建立了一套比较完整的理论体系!那么这章我们就根据已有的理论知识,通过可视化工具来实践一番. 我们今天要讲 ...
- leetcode Letter Combinations of a Phone Number python
class Solution(object): def letterCombinations(self, digits): """ :type digits: str : ...
- windows server 2008 NTP授时服务[转]
转自 http://www.cnblogs.com/jingdian1956/admin/EditPosts.aspx?opt=1 服务端: 默认情况下,独立服务器WINDOWS SERVER 20 ...