MFC学习之路(7)之Tab Control控件的使用

参考博文:https://blog.csdn.net/dongganxiao_maidou/article/details/80778584
1 . 在主对话框中添加Tab Control控件,如下图所示,右键控件添加ctrl类变量m_tab
在这里插入图片描述
2.资源视图—>右键Dialog 插入两个需要在Tab Control控件上显示的子对话框,IDD_DIALOG1.IDD_DIALOG2

3.主对话框中,右键—>类向导(ClassWizard)添加两个子对话框对应的类,假设类名为CDIALOG1、CDIALOG2。

4.在资源视图下增加两个对话框,分别修改其属性,将Border改为None,Style改为child

在主对话框CXXXDlg.h中包含上述两个对话框的头文件,并在主对话框的类中添加:

CDIALOG1 m_page1;   
CDIALOG2 m_page2;  

5.在主对话框初始化代码中添加:


void CTabTreeDlg::OnTabCtrInit()
{
	//为Tab Control增加两个页面  
	m_tab.InsertItem(0, _T("测试1"));  
	m_tab.InsertItem(1, _T("测试2"));  
	//创建两个对话框  
	m_page1.Create(IDD_DIALOG1, &m_tab);  
	m_page2.Create(IDD_DIALOG2, &m_tab);  
	//设定在Tab内显示的范围  
	CRect tabRect;  
	m_tab.GetClientRect(tabRect);  
	tabRect.left += 1;   
	tabRect.right -= 1;   
	tabRect.top += 22;   
	tabRect.bottom -= 1;
	m_page1.MoveWindow(&tabRect);  
	m_page2.MoveWindow(&tabRect);   
	//显示初始页面  
	m_page1.ShowWindow(SW_SHOW); 
	m_page2.ShowWindow(SW_HIDE); 
}

6.双击主对话框的TabControl控件进入消息编辑界面,添加:

void CTabTreeDlg::OnTabCtlSelect()
{
	switch(m_tab.GetCurSel())
	{
		case 0:
			m_page1.ShowWindow(SW_SHOW); 
			m_page2.ShowWindow(SW_HIDE); 
			break;
		case 1:
			m_page1.ShowWindow(SW_HIDE); 
			m_page2.ShowWindow(SW_SHOW); 
			break;
		default:break;
	}
}

7 .效果
在这里插入图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值