MFC使用Tab Control(选项卡控件)方法

【MFC】Tab Control控件使用 本文简单整理了初学者在学习MFC的Tab Control控件时的步骤,并附上在此过程中我遇到的一些问题,希望对你有所帮助。 阅读详情

MFC中使用Tab Control和VB中的使用还是比较不同的,MFC中的Tab Control就是Tab对象关联了对话框来实现的(对话框的Style要设置为Child),实现还是比较简单的,那我们上代码。

1.建立一个MFC工程,在对话框中加入Tab Control控件,关联CTabControl变量m_tab

2.建立几个对话框(你的Tab Control想有几页就建立几个,因为一页是关联一个对话框),这里我们建立2个

3.新建的2个对话框新建一下类,在主的对话框的.h中加入新建类的头文件,我们这里新建了两个对话框。

ID分别是:

IDD_DIALOG_COMMAND

IDD_DIALOG_FILE

为这两个对话框新建类分别是:

CFileDlg

CCommandDlg

那我们就在主对话框头文件中加入我们新建类对话框的文头件

#include "FileDlg.h"
#include "CommandDlg.h"

接着在主对话框的类中加入两个对话框成员对象:

 CCommandDlg m_CommandDlg;
 CFileDlg m_FileDlg;

好加入完毕之后,我们就到主对话框中的OnInitDialog()函数中处理我们的Tab Control控件消息,输入一下代码:

m_tab.InsertItem(0,"第一页");
 m_tab.InsertItem(1,"第二页");


///////////////////////////////////////获取Tab Control控件的界面,来设置子对话框的大小
 CRect rect;
 m_CommandDlg.Create(IDD_DIALOG_COMMAND, &m_tab);
 m_FileDlg.Create(IDD_DIALOG_FILE, &m_tab);

 m_tab.GetClientRect(&rect);
 rect.top+=40; 
 rect.bottom-=10;
 rect.left+=10;
 rect.right-=10;

 m_CommandDlg.MoveWindow(&rect);
 m_FileDlg.MoveWindow(&rect);
 m_RegeditDlg.MoveWindow(&rect);
 m_RemoteDlg.MoveWindow(&rect);

 m_CommandDlg.ShowWindow(true);
 m_FileDlg.ShowWindow(false);

 m_tab.SetCurSel(0);//设置默认选项卡

设置完毕后,接下来的最后一个工作就是为我们的Tab Control添加消息,为我们Tab Control添加TCN_SELCHANGE消息,在消息里面输入以下代码:

 

int CurSel = m_tab.GetCurSel();

 switch(CurSel)
 {
 case 0:
  m_CommandDlg.ShowWindow(true);
  m_FileDlg.ShowWindow(false);
  break;
 case 1:
  m_CommandDlg.ShowWindow(false);
  m_FileDlg.ShowWindow(true);
  break;
default: ;
  }

这下我们就完成了我们的选项卡,运行一下程序,点一下选项卡的标签“第一页”跟“第二页”看一下程序的效果。

MFC开发-TabControl控件使用 MFC开发-TabControl控件使用; 阅读详情

相关推荐

MFC中选项卡TabControl控件的用法

操作方法:在资源管理器里右键单击项目,为项目添加两个窗口资源,为了方便区分我们把其中一个窗口ID名改为IDD_DaGuai,另一个窗口ID名改为IDD_BaoHu。2. 打开对话框cpp文件,在初始化函数里为选项卡控件添加选项(这里以添加"打怪"和"这两个窗口最终是要显示在选项卡里的,所以边框是不能要的,在属性-外观-border设置为None。为了在显示时区分两个窗口,我们还要在两个窗口上做个记号(就在窗口的上下位置添。3. 接下来我们为"打怪"和"保护"选项关联对应的界面窗口。...

weixin_42655748的博客 6889

MFC标签页 Tab Control控件介绍

标签页Tab Control在MFC界面开发中的使用频率还是非常高的,本文章就主要介绍下该控件的使用。

new9232的博客 4974

MFC-添加菜单栏和Tab Control控件方法

一、菜单栏的添加 工程资源视图上右键->添加->资源->Menu,新建菜单栏即可。 在.h头文件上添加CMenu 变量,CMenu m_Menu;然后再OnInitDialog()函数中添加如下程序 m_Menu.LoadMenuA(IDR_MENU); SetMenu(&m_Menu); 在菜单上添加相应的功能,然后添加相应的函数即可 void CT...

weixin_43917678的博客 1048

[MFC]Tab Control控件

TabControl的使用 在主对话框窗口添加Tab Control控件 调整好Tab Control控件的位置,鼠标右键添加变量并为控件添加控件变量m_tab 双击子对话框界面为其添加MFC类,基类为CDialog 在资源视图下添加两个对话框,分别修改其属性,Border改为None,Style改为child 在主对话框头文件中添加这两个对话框的头文件,并在主对话框类中添加 #pragma once #include "TabControl1.h" #include "TabControl2.h

qq_43630810的博客 2722

VC++ 6.0 运用TAB 控件 操作

本次介绍对于初学者简单明了。 1. 新建一个MFC工程, 取名MyTab, 选择Dialog based, 然后Finish.2. 删除对话框上默认添加的三个控件. 添加Tab Control控件并在Property属性中设置ID为IDC_TABTEST 在More Styles里勾上Bottom. 调速尺寸使其布满整个对话框, 我这边Tab Control的尺寸最后为164X203. 在

qianhe_he的专栏 1901

Windows Tab Control控件使用技巧与实践

Windows应用程序开发中,Tab Control(选项卡控件)是一项重要的界面设计元素。它允许用户在一个窗口内切换多个视图(即选项卡),每个视图都可以承载不同的内容,从而优化用户界面的空间利用率。

weixin_42471823的博客 891

MFC 选项卡控件 Tab Control 的使用

[VC/MFC]使用CTabCtrl控件实现属性页功能 作者:茂叶 [原创] 浏览量: 3330 发表日期:2007-1-20 更新日期:2007-1-20     VC中的CTabCtrl用法与VB、Delphi的选项卡控件有很大的不同,每个属性页是用一个“窗体”(对话框)来实现,于是要为每个属性页对话框建类,还要关联、初始化……实在麻烦得多。但是CTabCtrl可重用性比Activ

HappyJandun's 学习笔录 3172

金桔智慧物流之容器(托盘、周转箱等)定位及周转方案原理

金桔智慧物流之容器(托盘、周转箱等)定位及周转方案原理 在物流行业种,托盘是标准化运输的关键的配件,而容器存在丢失、盘点、闲置等管理问题。如何通过信息化的手段提升容器的寿命,提高调配效率,降低闲置是物流容器行业的关键点。 金桔蓝牙网关配合金桔蓝牙资产管理终端可以解决物流行业痛点问题。 容器管理面临的问题: 技术方案 场景描述之库房 场景描述之车辆 场景描述之终端 方案优势 ...

jinjufocus的博客 1180

MFC之Tab Control 选项卡控件、实例、最快入门、使用方法

环境:win7 64bit;vs2013 win32 语言:c++ 1.新建一个对话框工程。命名为:TabControlTest,选择“基于对话框”,点击完成。 2. 在对话框上添加Tab控件,然后,在控件上右键添加变量,变量名为m_tab。 3. 在对话框的初始化函数OnInitDialog里面添加如下代码: m_tab.InsertItem(0, _T("类视图")); m_tab.Inser...

没有蛀牙lm的博客 3954

告别Arduino IDE!用VSCode搭建Arduino UNO R3开发环境(含代码补全配置)

本文详细指导如何用VSCode替代Arduino IDE搭建Arduino UNO R3开发环境,包含代码补全配置和高效开发技巧。通过安装必要插件、配置项目结构和优化工作流,可显著提升开发效率,特别适合复杂项目开发。文章还提供了常见问题解决方案和高级功能调优方法。

weixin_30698297的博客 479

图像特征(一)——颜色特征(颜色直方图,颜色矩,颜色集,颜色聚合向量和颜色相关图)

本文主要是为了更好地理解图像特征,理解各方法的原理。转载请注明出处https://mp.youkuaiyun.com/console/editor/html/105090183 图像模式识别的一般步骤为:输入图像--图像预处理--特征提取--特征选择--图像分类--输出结果。 图像特征主要有:颜色特征、形状特征、纹理特征和空间关系特征。 本文主要介绍颜色特征,并给出matlab上实现的demo。 颜...

gloria_iris的博客 3万+

C++ MFC 选项卡Tab Control完整用法

C++ MFC 选项卡Tab Control完整用法

qq_31691417的博客 2186

(一)利用Python实现数据集读取,Python基本文件操作介绍

机器学习是计算机对大量数据的分析过程,在机器学习的实际项目中,通常都需要准备数据集,数据集通常包含的数据数量是庞大的。例如,在处理计算机视觉领域的项目时,每一张图片都是一个单独的文件,为了提高模型训练的效果,图片数量通常会比较多,因此需要合理且高效的操作将所有的图片数据读取。本篇旨在介绍如何用Python对海量文件进行遍历,也是机器学习实践的第一步。.........

ZZR2631574030的博客 6357

023.MFC_属性页控件(tab control)

属性页控件属性页->选项卡->对话框CTabCtrl一、建立名为tabCtrl的mfc工程,添加Tab Control控件,设置属性ID为IDC_TAB,并添加变量m_tab 在tabCtrlDlg.cpp文件函数BOOL CtabCtrlDlg::OnInitDialog()中添加 // TODO: 在此添加额外的初始化代码 m_tab.InsertItem(0,...

weixin_30800987的博客 260

2022年TI杯模拟电⼦系统设计专题邀请赛——李萨如图形演示装置

本次装置主要是对输入的正弦信号进行频率变换,并将原输入正弦信号作为 X 轴信号、变换后的正弦信号作为 Y 轴信号,绘制李萨如图形。采用 EK-TM4C123GXL 板卡作为主控;频率变换采用“锁向环+计数器”实现 1-5 倍频的频率变换控制;李萨如图形采用两个 AD通道采集原输入的正弦信号作为 X 轴信号和频率变换后的正弦信号作为 Y 轴信号,绘制李萨如图形。

qq_45890466的博客 7769

2026年运维工程师常见面试选择题

这篇文章总结了30道Linux运维面试常见问题及解析,涵盖基础命令、系统监控、故障排查、数据库、缓存、容器编排等多个方面。主要内容包括: 基础命令使用:如df查看磁盘、free查看内存、top监控进程等 系统监控与故障排查:负载判断、端口检查、进程管理等 中间件相关:Nginx状态码、MySQL主从复制、Redis缓存问题 容器技术:Docker优势、Kubernetes作用 运维理念:高可用、监控告警、发布策略、备份容灾 工作原则:故障处理优先级、运维工程师核心能力 文章不仅提供标准答案,还解析了各命令的

不务正业的猿 193

VC++ Tab Control控件的使用

<br />1. 新建一个MFC工程, 取名MyTab, 选择Dialog based, 然后Finish. <br /><br />2. 删除对话框上默认添加的三个控件. 添加Tab Control控件并在Property属性中设置ID为IDC_TABTEST 在More Styles里勾上Bottom. 调速尺寸使其布满整个对话框, 我这边Tab Control的尺寸最后为164X203. 在ClassWizard为其添加变量, 变量名为m_tab. 类型为CTabCtrl. <br /><br />3

wangyangkobe的专栏 623

EMI辐射发射超标案例

EMI辐射发射超标案例

让你爱上电路设计 8503

【MFC】tab控件 仿任务管理器 枚举窗口和进程

创建一个基于对话框的MFC项目,给主对话框添加一个tab控件(设置关联变量 类型:CTabCtrl 名称:m_tab),添加两个子对话框(IDC_PAGE1和IDC_PAGE2),给子对话框添加一个list control控件(设置关联变量 类型:CListCtrl 名称:m_list),并将子对话框的边框属性设置为None,窗口样式设为child在资源视图界面右击对话框给IDC_PAGE1和IDC_PAGE2添加对话框类,类名分别为CPage1,CPage2。

m0_72895175的博客 1372

深入理解鸿蒙输入子系统驱动:HDI接口、HAL层与内核驱动的协同机制

/ 扫描输入设备// 打开指定输入设备// 关闭指定输入设备// 获取指定设备信息// 获取所有设备列表鸿蒙输入子系统驱动采用分层架构设计,通过HDI接口层实现硬件抽象,HAL层提供统一的事件处理机制,用户空间驱动层负责设备管理和事件分发。整个系统支持多种输入设备类型,包括触摸屏、按键、鼠标、键盘等,并提供了完整的HID设备支持。分层架构:清晰的层次划分,便于维护和扩展事件驱动:基于epoll的高效事件处理机制设备管理:完善的设备生命周期管理HID支持。

m0_67505153的博客 213

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Tab Control 控件的使用简介

MFC对话框中添加TAB CONTROL空间1.建立MFC对话框工程2.删除对话框上的静态文本信息和“确定”,“取消”按钮。3.添加控件工具栏中拖入即可(如果没有控件工具栏,在Tools—Customize—Toolbars—Controls打勾即可)4.把Tab Control控件托到和对话框一样大。5.右击选择Properties 修改ID:IDC_TABCONTROL

txwdmkz的专栏 1579

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

MFC中使用TAB Control控件(转)

<br />    假如我现在有个SDI程序,View是Form View,想在上面放个Tab Control,包含两个Page。现在让我们来看看应该怎样处理。<br /><br />首先当然要增加一个Tab Control资源,然后利用Class Wizard,在View中增加一个Control变量。<br /><br />接着建立两个对话框资源,别忘了把Style改为Child,Border改为None。然后就可以在上面加其他控件了。<br /><br />接着利用Class Wizard,分别为这两个

CRDBreeze的专栏 780

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

MFC中tab control控件的使用方法

一、新建一个MFC工程, 取名Tabctrl, 选择基于对话框, 然后点完成。   二、删除对话框上默认添加的三个控件,添加Tab Control控件,属性设置:ID:IDC_TAB1    三、 为Tab Control控件绑定控件变量,变量名为m_Tab,类型为CTabCtrl。 四、在TabCtrlDlg.cpp文件中,找到初始化函数OnInitDialog并在里面添加如下代码

xinm1001的博客 5418

在MFC中使用Tab Control控件实现分页显示和跳转

在MFC中使用Tab Control控件实现分页显示和跳转: 1、首先创建一个对话框应用程序。 2、在该对话框上添加Tab控件,然后利用类向导,给Tab控件添加一个Control成员变量m_tabctrl。 3、接着建立两个对话框资源,别忘了把Style改为Child,Border改为None。然后就可以在上面加其他控件了。接着分别为这两个对话框建立两个类,比如CPage1和CPage2。

zxccaoya的博客 5912

MFC---标签控件Tab Control(常用控件)

标签控件也比较常见。它可以把多个页面集成到一个窗口中,每个页面对应一个标签,用户点击某个标签时,它对应的页面就会显示。下图是Windows系统配置中标签控件的例子:使用标签控件我们可以同时加载多个有关联的页面,用户只需点击标签即可实现页面切换,方便灵活的进行操作。每个标签除了可以显示标签文本,还可以显示图标。标签控件相当于是一个页面的容器,可以容纳多个对话框,而且一般也只容纳对话框,所以我们不能直接在标签控件上添加其他控件,必须先将其他控件放到对话框中,再将对话框添加到标签控件中。

Frank---7的博客 3312

mfc中使用Tab Control控件

转自: http://blog.163.com/gz_ricky/blog/static/1820491182011061180897/   然后在”资源”找到Tab Control控件, 将他拖进来~   虽然面板显示了这个控件, 但它完全不会起作用, 因为在代码层次来讲它完全未实现, 只是在资源文件中有所体现

xrzh8989的专栏 684
上一篇: MFC取消HtmlDialog对话框的"确定"和"取消"按钮方法
下一篇: MFC使用ToolBar工具栏添加真彩色图标
Big Joker
博客等级 码龄14年 92粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值