zoukankan      html  css  js  c++  java
  • CTabCtrl的使用

    1、在主窗口中定义一个CtabCtrl,添加变量m_tabctrl;

    2、添加两个子窗口IDD_ONE_DIALOG,IDD_TWO_DIALOG(新建对话框,然后双击界面添加头文件和cpp),属性为child和无边框

    3、在主窗口头文件中定义这两个子窗口的类对象m_one,m_two

    自定义下面函数,放在初始化函数里面,就给这个tab生成了两个界面

    void CDlg::AddTab()
    {
    CRect rect;
    this->GetClientRect(&rect);
    m_tabctrl.InsertItem(0, _T("1"));
    m_tabctrl.InsertItem(1, _T("2"));
    m_server.Create(IDD_ONE_DIALOG, &m_tabctrl);
    m_server.SetWindowPos(NULL, 0, 20, rect.Width(), rect.Height(), SWP_SHOWWINDOW);
    m_client.Create(IDD_TWO_DIALOG, &m_tabctrl);
    m_client.SetWindowPos(NULL, 0, 20, rect.Width(), rect.Height(), SWP_HIDEWINDOW);
    }

    4、重写OnTcnSelchangeTab(NMHDR *pNMHDR, LRESULT *pResult)虚函数

    通过下面来显示或者隐藏对应项

    CRect rect;
    this->GetClientRect(&rect);

    switch (m_tabctrl.GetCurSel())
    {
      case 0:
        {
        m_server.SetWindowPos(NULL, 0, 20, rect.Width(), rect.Height(), SWP_SHOWWINDOW);
        m_client.SetWindowPos(NULL, 0, 20, rect.Width(), rect.Height(), SWP_HIDEWINDOW);
        break;
        }
      case 1:
        {
        m_server.SetWindowPos(NULL, 0, 20, rect.Width(), rect.Height(), SWP_HIDEWINDOW);
        m_client.SetWindowPos(NULL, 0, 20, rect.Width(), rect.Height(), SWP_SHOWWINDOW);
        break;
        }

      default:
        break;

     }

  • 相关阅读:
    CF 149D Coloring Brackets(区间DP,好题,给配对的括号上色,求上色方案数,限制条件多,dp四维)
    hdu 4607 树形dp 树的直径
    poj 2955 区间dp入门题
    poj 2139 flord水题
    poj 2377 最大生成树
    lightoj 1422 区间dp
    模拟类似括号匹配
    nyoj 33 蛇形填数
    nyoj 2 括号配对问题水
    Hackonacci Matrix Rotations 观察题 ,更新了我的模板
  • 原文地址:https://www.cnblogs.com/judes/p/6173532.html
Copyright © 2011-2022 走看看