您的位置:首页 > 其它

MFC tab控件使用

2016-05-03 20:06 330 查看
一:在对话框窗口中添加tab控件,并创建一个窗口变量CTabCtrl m_tab_main;// tab页的框架

1:在.h中添加定义

#define PAGE_MAX   (6)//最大页面数

private:

 UINT8  m_pagecount;                     //页面数量

 CDialog  *m_pPage[PAGE_MAX];  //页面指针数组

 UINT8  m_cur_page;                       //当前页面指针

1:在ONinitdialog()中添加

{

   //设定显示在Tab范围内 

   CRect rc;

   m_tab_main.GetClientRect(rc);   //获取当前tab控件和客户区域 

   //调整rc的区域以匹配报警页面 

   rc.top += 21;

   rc.bottom -= 2;

   rc.left += 2;

   rc.right -= 1;

//创建页面

m_pagecount= 0; //页面数量

 

   //设置默认的选项卡 

   m_cur_page = 0; //当前页面指针

   m_pPage[m_cur_page]->ShowWindow(true);

   m_tab_main.SetCurSel(m_cur_page);

}

2:添加事件处理函数

void CggclientDlg::OnSelchangeTabMain(NMHDR *pNMHDR, LRESULT *pResult)

{

 // TODO:  在此添加控件通知处理程序代码

 int cur_sel = m_tab_main.GetCurSel();

 if (m_cur_page != cur_sel)

 {

  m_pPage[m_cur_page]->ShowWindow(SW_HIDE);

  m_pPage[cur_sel]->ShowWindow(SW_SHOW);

  m_cur_page = cur_sel;

 }

 *pResult = 0;

}

二:在资源文件夹中添加->资源->对话框->新建。

三:对新建的对话框,style选child,border选none,调整到合适的尺寸,修改ID:IDD_PAGE_NEW

四:在新建的对话框上添加一个类,CPageNew

五:在主dlg.h中添加

#include "pagenew.h"

及变量

 CPageNew m_page_NEW; //新建页面

六:在主对话框的ONinitdialog()中添加

{

//创建页面

if (m_userpms && PMS_OPER_NEW)

  {

    m_tab_main.InsertItem(m_pagecount, _T("新"));

    m_page_new.Create(IDD_PAGE_NEW, &m_tab_main);

    m_page_new.MoveWindow(&rc);

    m_page_new.ShowWindow(false);

    m_pPage[m_pagecount++] = &m_page_new;

 }

}

七:循环2-6,添加其他对话框


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