C++ Code_TabControl
2024-10-12 15:22:12
主题 |
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); |
附件列表
最新文章
- 【学】AngularJS日记(2)
- 关于VC工程的组成
- C#课外实践——校园二手平台(技术篇2)
- 2015-11-04 报表 (asp.net 部分)
- POJ 1064 Cable master (二分答案)
- ios开发——仿新版iBooks书本打开与关闭动画
- mongoDB入门必读
- [OJ] Single Number II
- Arbitrage
- Java学习笔记之类和对象
- 关于在官网上下载Eclipse遇到的问题!!
- css小工具
- 如何修改select标签的默认下拉箭头样式?
- mysql 索引类型
- 46.Linux-创建rc红外遥控平台设备,实现重复功能(2)
- System.Web.WebPages.Html.HtmlHelper”不包含XXXX
- java判断是否是数字
- MySQL误删数据
- 【刷题】LOJ 6007 「网络流 24 题」方格取数
- ios开发之--解决“Could not insert new outlet connection”的问题。