您的位置:首页 > 编程语言 > C语言/C++

C++ MFC Tab Control 控件的一些用法

2018-03-14 10:42 309 查看
初始化Tab控件
BOOL CDlg_IO::OnInitDialog()
{
    CDialog::OnInitDialog();
    
    m_staticTitle.SetFontStyle(25);
    m_staticTitle.SetBKColor(CStaticText::BLUE,FALSE);    
    m_staticTitle.SetFontColor(CStaticText::F_WHITE,TRUE);

    m_pDlg_IO_1 = new CDlg_IO_1;
    m_pDlg_IO_1->Create(IDD_DLG_IO_1,&m_Tab);
    CUseful::MaxTab(m_pDlg_IO_1,&m_Tab);

    m_pDlg_IO_2 = new CDlg_IO_2;
    m_pDlg_IO_2->Create(IDD_DLG_IO_2,&m_Tab);
    CUseful::MaxTab(m_pDlg_IO_2,&m_Tab);

    m_pDlg_IO_3 = new CDlg_IO_3;
    m_pDlg_IO_3->Create(IDD_DLG_IO_3,&m_Tab);
    CUseful::MaxTab(m_pDlg_IO_3,&m_Tab);

    m_pDlg_IO_4 = new CDlg_IO_4;
    m_pDlg_IO_4->Create(IDD_DLG_IO_4,&m_Tab);
    CUseful::MaxTab(m_pDlg_IO_4,&m_Tab);

    m_pDlg_IO_5 = new CDlg_IO_5;
    m_pDlg_IO_5->Create(IDD_DLG_IO_5,&m_Tab);
    CUseful::MaxTab(m_pDlg_IO_5,&m_Tab);
    
    m_Tab.InsertItem(0,"GIO1");
//    m_Tab.InsertItem(1,"LSIO1");

    ChangeTab(0);
    return TRUE;

}
Tab控件点击回调事件
void CDlg_IO::OnSelchangeTab(NMHDR* pNMHDR, LRESULT* pResult)
{
    ChangeTab(m_Tab.GetCurSel());
    *pResult = 0;

}void CDlg_IO::ChangeTab(short sIndex)
{
    BOOL BTrue[6] = {FALSE};
    BTrue[sIndex] = TRUE;
    
    CUseful::SetDlgState(m_pDlg_IO_1,BTrue[0]);
    CUseful::SetDlgState(m_pDlg_IO_2,BTrue[1]);
    CUseful::SetDlgState(m_pDlg_IO_3,BTrue[2]);
    CUseful::SetDlgState(m_pDlg_IO_4,BTrue[3]);
    CUseful::SetDlgState(m_pDlg_IO_5,BTrue[4]);

}
析构函数
CDlg_IO::~CDlg_IO()
{
    if (NULL != m_pDlg_IO_1)
    {
        m_pDlg_IO_1->DestroyWindow();
        delete m_pDlg_IO_1;
        m_pDlg_IO_1 = NULL;
    }
    if (NULL != m_pDlg_IO_2)
    {
        m_pDlg_IO_2->DestroyWindow();
        delete m_pDlg_IO_2;
        m_pDlg_IO_2 = NULL;
    }
    if (NULL != m_pDlg_IO_3)
    {
        m_pDlg_IO_3->DestroyWindow();
        delete m_pDlg_IO_3;
        m_pDlg_IO_3 = NULL;
    }
    if (NULL != m_pDlg_IO_4)
    {
        m_pDlg_IO_4->DestroyWindow();
        delete m_pDlg_IO_4;
        m_pDlg_IO_4 = NULL;
    }
    if (NULL != m_pDlg_IO_5)
    {
        m_pDlg_IO_5->DestroyWindow();
        delete m_pDlg_IO_5;
        m_pDlg_IO_5 = NULL;
    }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C MFC Tab Control