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的更多相关文章
随机推荐
- selenium python (十四)上传文件的处理
#!/usr/bin/python# -*- coding: utf-8 -*-__author__ = 'zuoanvip' #上传过程一般要打开一个系统的windows窗口,从窗口选择本地文件添加 ...
- 修改ssh服务的默认端口
修改ssh服务的默认端口 1.查看当前服务端口 一般ssh服务的默认端口为22端口,查看监听的端口用netstat,如下: [root@ansiblemoniter ~]# netstat -tnlp ...
- Heilmeier's criteria
介绍个Criteria:Heilmeier's criteria 在Alex Smola 的 SML: Scalable Machine Learning 课程网页上看到的,写的非常好. Heilm ...
- 关于python requests包新版本设置代理的问题
在更新了requests包之后,发现我电脑上的charles工具无法再成功抓取到数据包.百度了半年都没有找到原因. 然后 我使用了 google 查到了 charles的最新的文档发现.需要设置代理, ...
- 转】从源代码剖析Mahout推荐引擎
原博文出自于: http://blog.fens.me/mahout-recommend-engine/ 感谢! 从源代码剖析Mahout推荐引擎 Hadoop家族系列文章,主要介绍Hadoop家族产 ...
- 100offer 为专业程序打造的招聘平台
引用一段100offer的简介 优秀程序员最高效的求职方式 您是名优秀的程序员,很多公司都想邀请您加入,您也有一颗躁动的心.可是,换一份工作对于您,是件机会成本很高的事情.您想一次性看很多个不错的机会 ...
- Oracle中INT、FLOAT、NUMBER区别
Oracle里的int等于number(长度,0) float也类似,number要定义小数部分的位数,而float不用定义后边小数有几位 因为NUMBER要确定长度,后边确定小数位. 所以,如果不 ...
- C++11包装引用
[C++11包装引用] 我们可以通过实体化样板类 reference_wrapper 得到一个包装引用 (wrapper reference).包装引用类似于一般的引用.对于任意对象,我们可以通过模板 ...
- hibernate search例子
[TOC] 1. 概念介绍 1.1. Hibernate Search Hibernate Search是Hibernate的子项目,把数据库全文检索能力引入到项目中,并通过"透明" ...
- printf输出字符串的一些格式
1. 原样输出字符串: printf("%s", str); 2. 输出指定长度的字符串, 超长时不截断, 不足时右对齐: printf("%Ns" ...