MFC中Tab control控件的使用

Tab control控件的使用

1创建一个Tab control控件到对话框中,添加变量为 CTabCtrl m_MyTab
2创建两个对话框用来做切换的不同的显示界面,属性一定要Border属性设置为None,Style设置为Child,不然使用不了,类名为PageTest
3在对话框类中添加刚刚创建的对话框页面,代码如下

    PageTest m_Page1;
    PageTest m_Page2;
    CDialog* pDialog[2];  //用来保存对话框对象指针
    int m_CurSelTab;

4在对话框OnInitDialog函数中初始化控件,代码如下

 //为Tab Control增加两个页面
    m_MyTab.InsertItem(0, _T("页面1"));
    m_MyTab.InsertItem(1, _T("页面2"));
    //创建两个对话框
    m_Page1.Create(IDD_DIALOG2, &m_MyTab);
    m_Page2.Create(IDD_DIALOG1, &m_MyTab);
    //设定在Tab内显示的范围
    CRect rc;
    m_MyTab.GetClientRect(rc);
    rc.top += 20;
    rc.bottom -= 0;
    rc.left += 0;
    rc.right -= 0;
    m_Page1.MoveWindow(&rc);
    m_Page2.MoveWindow(&rc);

    //把对话框对象指针保存起来
    pDialog[0] = &m_Page1;
    pDialog[1] = &m_Page2;
    //显示初始页面
    pDialog[0]->ShowWindow(SW_SHOW);
    pDialog[1]->ShowWindow(SW_HIDE);
    //保存当前选择
    m_CurSelTab = 0;

5在tab控件上双击响应程序下代码处理切换功能,代码如下:

void CMFCTestContorDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult)
{
    // TODO:  在此添加控件通知处理程序代码
    //把当前的页面隐藏起来
    pDialog[m_CurSelTab]->ShowWindow(SW_HIDE);
    //得到新的页面索引
    m_CurSelTab = m_MyTab.GetCurSel();
    //把新的页面显示出来
    pDialog[m_CurSelTab]->ShowWindow(SW_SHOW);
    *pResult = 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值