您的位置:首页 > 其它

Tab Control控件简单使用

2016-02-04 09:59 399 查看
本文讲述在普通对话框上添加标签的简单示例

第一步拖一个Tab Control到对话框上并添加变量m_tabCtrl;

  


第二步添加两个对话框资源IDD_DIALOG1,IDD_DIALOG2并将style为Child, Border为None,再分别为其添加对应的基于CDialog m_page1,m_page2

第三步在OnInitDialog()添加如下代码

  

 

 


代码

//添加选项卡名称
m_tabCtl.InsertItem(0,L"选项卡1");

m_tabCtl.InsertItem(1,L"选项卡2");

    
//设置IDC_TAB1为父窗口
m_page1.Create(IDD_DIALOG1,GetDlgItem(IDC_TAB1));

m_page2.Create(IDD_DIALOG2,GetDlgItem(IDC_TAB1));

    
//获得IDC_TABTEST客户区大小
CRect rc;

m_tabCtl.GetClientRect(&rc);

    
//调整子对话框在父窗口中的位置
rc.top += 30;

rc.bottom -= 8;

rc.left += 8;

rc.right -= 8;

//设置子对话框尺寸并移动到指定位置
m_page1.MoveWindow(&rc);

m_page2.MoveWindow(&rc);

//分别设置隐藏和显示
m_page1.ShowWindow(true);

m_page2.ShowWindow(false);

//设置默认的选项卡
m_tabCtl.SetCurSel(0);

 

 

第四步 添加Tab Control控件的TCN_SELCHANGE事件响应函数OnSelchangeTabtest(NMHDR* pNMHDR, LRESULT* pResult) ,函数体代码如下:

 


代码

void CProPageDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult)

{

    // TODO: 在此添加控件通知处理程序代
    int CurSel = m_tabCtl.GetCurSel();

    switch(CurSel)

    {

    case 0:

        m_page1.ShowWindow(true);

        m_page2.ShowWindow(false);

        break;

    case 1:

        m_page1.ShowWindow(false);

        m_page2.ShowWindow(true);

        break;

    }

    *pResult = 0;

}

 

然后自己慢慢调整对话框的合适位置咯....

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: