C++ Code_TabControl
主题 |
1. 2. 3. 4. 5. |
属性 |
选项卡控件基础 |
1.插入1个对话框,新建1个类 CCDialog1,1
个对话框对应一个TAB属性页面 2.对话框设置属性
Style:Child,
Border:None
3. 定义公共变量
双击 DIALOG1的OK按钮
CDialog1 m_page1;
CDialog2 m_page2;
CDialog3 m_page3;
给TABCTRL 关联一个控件变量
CTabCtrl m_tab1;
4 代码如下::OnInitDialog()
// TODO: Add extra initialization here
m_tab1.InsertItem(0,"AA");
m_tab1.InsertItem(1,"BB");
m_tab1.InsertItem(2,"CC");
m_page1.Create(IDD_DIALOG1,&m_tab1);
m_page2.Create(IDD_DIALOG2,&m_tab1);
m_page3.Create(IDD_DIALOG3,&m_tab1);
CRect rect;
m_tab1.GetClientRect(rect);
rect.DeflateRect(2,30,2,2);
m_page1.MoveWindow(&rect);
m_page2.MoveWindow(&rect);
m_page3.MoveWindow(&rect);
m_page1.ShowWindow(SW_SHOW);
m_page2.ShowWindow(SW_HIDE);
m_page3.ShowWindow(SW_HIDE);
m_tab1.SetCurSel(0);
5 为双击tabctrl添加OnSelchangeTab1消息
void CMfc01Dlg::OnSelchangeTab1(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
int nCurSel = m_tab1.GetCurSel();
switch(nCurSel)
{
case 0:
m_page1.ShowWindow(SW_SHOW);
m_page2.ShowWindow(SW_HIDE);
m_page3.ShowWindow(SW_HIDE);
break;
case 1:
m_page1.ShowWindow(SW_HIDE);
m_page2.ShowWindow(SW_SHOW);
m_page3.ShowWindow(SW_HIDE);
break;
case 2:
m_page1.ShowWindow(SW_HIDE);
m_page2.ShowWindow(SW_HIDE);
m_page3.ShowWindow(SW_SHOW);
break;
}
*pResult = 0; }
效果图:
|
显示图标的选项卡 |
1. 2. CImageList m_imgLst1;//如果这个变量声明放在初始化这个地方
则图标显示不不出来 // TODO: Add extra initialization here
m_imgLst1.Create(24,24,ILC_COLOR24|ILC_MASK,1,1);
m_imgLst1.Add(LoadIcon(AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON1)));
m_imgLst1.Add(LoadIcon(AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON2)));
m_imgLst1.Add(LoadIcon(AfxGetResourceHandle(),MAKEINTRESOURCE(IDI_ICON3)));
m_tab1.SetImageList(&m_imgLst1);
m_tab1.InsertItem(0,"AA",0);
m_tab1.InsertItem(1,"BB",1);
m_tab1.InsertItem(2,"CC",2); 效果图 注:本代码这是片段代码,在上面 图片列表使用 CImageList imglst.Create(); imgLst.Add(); imgLst.SetImageList(&imglst); |
附件列表
C++ Code_TabControl的更多相关文章
随机推荐
- Jmeter介绍
一.添加线程组 一个性能测试请求负载是基于一个线程组完成的.一个测试计划必须有一个线程组.测试计划添加线程组非常简单.在测试计划右键弹出下拉菜单(添加-->Threads(Users)---&g ...
- linux 常用端口列表
常见端口表汇总 1 tcpmux TCP Port Service Multiplexer 传输控制协议端口服务多路开关选择器 2 compressnet Management Utility com ...
- VC远控(二)连接Server端及密码验证
首先服务端是一个win32console应用程序. 在建立项目的时候需要勾选MFC 套接字的初始化同客户端相似: //对套接字进行初始化 WSADATA wsadata; WORD ver = MAK ...
- linux系统中内存爆满之后会如何?
在使用python写程序的时候,发现一个可以无限迭代的迭代器,从而可以直接将系统中的内存占满,那么占满之后会发生什么呢? 1. 创建无限迭代,生成列表,如下: [root@python ~]# pyt ...
- “内部类” 大总结(Java)
(本文整理自很久以前收集的资料(我只是做了排版修改),作者小明,链接地址没有找到,总之感谢,小明) (后面也对"静态内部类"专门做了补充) 内部类的位置: 内部类可以作用在方法里以 ...
- kali install fcitx
1 卸载fcitx相关软件包 如果系统安装了fcitx相关东西,需要卸载,因为源的fcitx版本太低.请谨慎,后果自负. apt-get purge fcitx-* 2 手动下载最新的fcitx软件包 ...
- HBase高性能复杂条件查询引擎---二级多列索引
http://www.infoq.com/cn/articles/hbase-second-index-engine 原理 “二级多列索引”是针对目标记录的某个或某些列建立的“键-值”数据,以列的值为 ...
- [转]Centos配置国内yum源
原文地址:http://blog.chinaunix.net/uid-23683795-id-3477603.html 网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常 ...
- AndroidStudio debug
1. view as text
- POJ 2888 Magic Bracelet(Burnside引理,矩阵优化)
Magic Bracelet Time Limit: 2000MS Memory Limit: 131072K Total Submissions: 3731 Accepted: 1227 D ...