Tab Control使用方法

本文介绍如何在MFC应用程序中将多个独立对话框整合到一个TabControl中,实现选项卡式的界面布局。通过创建不同类型的CTestpage对话框类,并在主对话框OnInitDialog函数中进行初始化设置,调整位置及显示状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经常会遇到需要对话框按照tab control 选项卡的形式显示在对话框上,怎样将单独的对话框与另一个关联起来呢。

首先新建两个对话框,Dialog1和Dialog2并分别为其生成类CTestpage0  CTestpage1在主对话框CF_testDlg中添加变量CTestpage0(类型) m_rPage0(变量名),同理CTestpage1 m_rPage1,为主对话框添加一个TabControl控件,右键控件,在Classvizzard 中添加一个变量m_rTabCtrl

然后添加程序在主对话框的OnInitDialog中

m_rTabCtrl.InsertItem(0,"运行参数设置");
    
    m_rTabCtrl.InsertItem(1," PID参数设置");
    
    m_rTabCtrl.InsertItem(2,"测试页三");
    
    //建立属性页各页
    
    m_rPage0.Create(IDD_DIALOG1,GetDlgItem(IDC_TAB1));
    
    m_rPage1.Create(IDD_DIALOG2,GetDlgItem(IDC_TAB1));
    
    m_rPage2.Create(IDD_DIALOG3,GetDlgItem(IDC_TAB1));
    
    //设置页面的位置在m_tab控件范围内
    
    CRect rect;
    
    m_rTabCtrl.GetClientRect(&rect);
    
    rect.top+=20;
    
    rect.bottom-=4;
    
    rect.left+=4;
    
    rect.right-=4;
    
    m_rPage0.MoveWindow(&rect);
    
    m_rPage1.MoveWindow(&rect);
    
    m_rPage2.MoveWindow(&rect);
    
    m_rPage0.ShowWindow(TRUE);
    
    m_rPage1.ShowWindow(FALSE);
    
    m_rPage2.ShowWindow(FALSE);
    
    m_rTabCtrl.SetCurSel(0);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值