TabControl控件的简单使用-添加tab
1、首先创建一个MFC对话框框架,在对话框资源上从工具箱中添加上一个Tab Control 控件,根据需要修改一下属性,然后右击控件,为这个控件添加一个变量,将此控件跟一个CTabCtrl类变量绑定在一起,这里设为m_tab

- 在资源中插入两个对话框,作为Tab Control控件切换的界面,然后必须将这两个对话框的Border属性设置为None,Style设置为Child,可以在这两个页面中添加自己的控件,稍后会在Tab Control 控件添加这两个测试页,为创建的两个对话框建立两个MFC类,CObjInfoDlg1,CObjInfoDlg2,添加类的方法:右击对话框界面,在弹出框中选择添加类;


在主对话框类中添加

在主对话框类中实现
virtual BOOL OnInitDialog();重写以增加对话框的初始化
BOOL CDlgDemoV1::OnInitDialog()
{
CDialogExt::OnInitDialog();
// TODO: 在此添加额外的初始化
// 初始化tabctrl
m_tab.InsertItem(0, _T("测试页面1"));
m_tab.InsertItem(1, _T("测试页面2"));
// 创建两个对话框
m_page1.Create(OBJ_INFO_PAGE1, &m_tab);
m_page2.Create(OBJ_INFO_PAGE2, &m_tab);
//设定在Tab内显示的范围
CRect rc;
m_tab.GetClientRect(rc);
rc.top += 20;
rc.bottom -= 0;
rc.left += 0;
rc.right -= 0;
m_page1.MoveWindow(&rc);
m_page2.MoveWindow(&rc);
//把对话框对象指针保存起来
pDlg[0] = &m_page1;
pDlg[1] = &m_page2;
//显示初始页面
pDlg[0]->ShowWindow(SW_SHOW);
pDlg[1]->ShowWindow(SW_HIDE);
//保存当前选择
m_CurSelTab = 0;
return TRUE; // return TRUE unless you set the focus to a control
// 异常: OCX 属性页应返回 FALSE
}
- 添加切换tab事件

void CDlgDemoV1::OnTcnSelchangeObjTab(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: 在此添加控件通知处理程序代码
//把当前的页面隐藏起来
pDlg[m_CurSelTab]->ShowWindow(SW_HIDE);
//得到新的页面索引
m_CurSelTab = m_tab.GetCurSel();
//把新的页面显示出来
pDlg[m_CurSelTab]->ShowWindow(SW_SHOW);
*pResult = 0;
}
- 结果


TabControl控件的简单使用-添加tab的更多相关文章
- C#利用tabControl控件实现多窗体嵌入及关闭
创建一个主窗体(Formmain).两个副窗体(Form1,Form2);在主窗体中分别添加一个menuStrip控件.tabControl控件,并在menu控件上添加一个主菜单和两个子菜单 继而 ...
- 扩展GridView控件——为内容项添加拖放及分组功能
引言 相信大家对GridView都不陌生,是非常有用的控件,用于平铺有序的显示多个内容项.打开任何WinRT应用或者是微软合作商的网站,都会在APP中发现GridView的使用.“Tiles”提供了一 ...
- DevExpress控件使用系列--ASPxGridView+Popup+Tab
1.控件功能 列表控件展示数据.弹框控件执行编辑操作.Tab控件实现多标签编辑操官方说明 2.官方示例 2.1 ASPxGridView http ...
- TabControl控件的美化
文件下载:http://files.cnblogs.com/zfanlong1314/TabControlEX.rar 本文转载:http://www.cnblogs.com/lmlblog/arch ...
- Visual Studio中的TabControl控件的用法
今天遇到了一个自己没遇到过的控件TabControl控件,所以找了点关于它的资料 TabControl属性 DisplayRect:只定该控件客户区的一个矩形 HotTrack:设置当鼠标经过页标签 ...
- WPF 自定义TabControl控件样式
一.前言 程序中经常会用到TabControl控件,默认的控件样式很普通.而且样式或功能不一定符合我们的要求.比如:我们需要TabControl的标题能够居中.或平均分布:或者我们希望TabContr ...
- TabControl控件和TabPage
TabControl控件和TabPageTabControl控件可以支持在一个控件里面放置多个选项卡,每个选项卡又可以放置多个控件 由于在控件属性窗口添加选项卡相对比较容易,下面说一下动态创建选项卡 ...
- TabControl控件用法图解
1.首先创建一个MFC对话框框架,在对话框资源上从工具箱中添加上一个TabControl控件 2.根据需要修改一下属性,然后右击控件,为这个控件添加一个变量,将此控件跟一个CTabCtrl类变量绑定在 ...
- c# TabControl控件中TabPage选项卡切换时触发的事件
选项卡切换触发的是tabcontrol控件的SelectedIndexChanged事件. 当tabcontrol控件的任何一个tabpage被点击或选择,即发生SelectedIndexChange ...
- 给C#的treeview控件的部分节点添加checkbox
一.先初始化treeview this.treeView1.CheckBoxes = true; this.treeView1.ShowLines = false; this.treeView1.Dr ...
随机推荐
- Git使用与心得体会
Git使用与心得体会 一.闲聊 闲暇时间学一下Git,也算是不用在网页端操作github了 二.Git相关 集中式与分布式 Git是一个分布式的版本控制系统,而传统的SVN则属于集中式 集中式与分布式 ...
- 洛谷P1253 [yLOI2018] 扶苏的问题 (线段树)
一道用来练习打标记的好题. 对于区间加和区间赋值两个操作分别用两个标记,分析如何打标记并下传标记(还是比较好分析的). 坑点:查询操作时,我一开始把ans设为-0x3f3f3f3f(调试了好久才发现) ...
- 谣言检测()《Data Fusion Oriented Graph Convolution Network Model for Rumor Detection》
论文信息 论文标题:Data Fusion Oriented Graph Convolution Network Model for Rumor Detection论文作者:Erxue Min, Yu ...
- flutter系列之:builder为构造器而生
目录 简介 Builder StatefulBuilder LayoutBuilder 总结 简介 flutter中有很多种Builder,虽然所有的builder都是构造器,但是不同的builder ...
- surging 将推出社区版微服务平台
前言 对于.NET大家并不陌生,有大批的企业选择.NET作为公司构建多种应用的开发平台,但是近几年随着微服务,大数据,移动端,物联网兴起,而后.NET社区生态没有跟上时代的步伐,已开始趋于没落,而其中 ...
- 参考Dubbo3官方文档做的学习笔记
文章目录 概念与架构 2.1 服务发现 Dubbo3官方文档: https://dubbo.apache.org 服务:是 Dubbo 中的核心概念,一个服务代表一组 RPC 方法的集合,服务是面向用 ...
- Cenots7 离线安装部署PostgreSQL
1 PostgreSQL源码包下载并复制 1.1 PostgreSQL源码包下载: 访问PostgreSQL官网 选择所需版本进行下载,本次下载安装版本为v14.5 1.2 复制源码包至服务器 使用S ...
- Charles基本功能
Windows: 运行安装应用程序以在程序菜单中安装 Charles. Mac OS X: 通过双击解压缩下载文件,然后将 Charles 应用程序复制到 Applications 目录中. Linu ...
- Mockito使用方法(Kotlin)
一.为什么要使用Mockito 1.实际案例 1.1 遇到的问题 对于经常维护的项目,经常遇到一个实际问题:需求不停改变,导致架构经常需要修改某些概念的定义. 对于某些十分基础又十分常用的概念,常常牵 ...
- VS2022连接Oracle数据库所需包和连接字符串
VS连接ORACLE数据库 l VS2022连接ORACLE数据库时,需要引入Oracle.ManagedDataAccess.Core包. l 引入方式:打开VS2022==>项目==&g ...