CMFCTabCtrl如何截获点击关闭选项卡按钮的消息,求助

jack12346789 2013-12-06 10:41:53
现设计一个界面,需要在点击功能按钮后在右侧的Tab中出现相应的Page页面,但是思考了很久不知道如何去控制选项卡的显示与隐藏,现在我有一个想法是建立一个以CWnd指针对象的链表,在Page添加进去后就把该Page的指针加入链表(主页是链表头),然后遍历链表让其它Page隐藏,在Page关闭时截获这一消息,并把遍历链表把该对象释放。现在不知道如何截获页面关闭时的消息,求指点
...全文
1204 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
哈维利亚 2015-12-23
  • 打赏
  • 举报
回复
不知楼主愿不愿意分享一下源码?我的一个项目在使用CMFCTabCtrl时老出现问题,界面效果也不满意,我也得您的界面我也以借鉴一下,能不能分享一下源码发我的QQ邮箱:479445582@qq.com,非常感谢!
wyxdyx111 2015-11-10
  • 打赏
  • 举报
回复
为何不直接让相应的Page页面激活或者置顶呢,难道不行?
TOMSER123 2015-03-27
  • 打赏
  • 举报
回复
BOOL CSTGraphMonitorDlg::OnInitDialog() { CDialogEx::OnInitDialog(); CRect rect; GetDlgItem(IDC_STATIC_TAB)->GetWindowRect(rect); GetDlgItem(IDC_STATIC_TAB)->ShowWindow(SW_HIDE); ScreenToClient(rect); m_tab.Create(CMFCTabCtrl::STYLE_3D_ONENOTE,//控件样式,如最上面所演示 rect,//控件区域 this,//控件的父窗口指针 1,//控件ID CMFCTabCtrl::LOCATION_TOP);//标签位置 m_tab.AutoSizeWindow(TRUE);//可以让对话框随tab显示区域而缩放,同时出发对话框的OnSize消息 m_HSChartCtrl.Create(&m_tab,rect,2); UpdateData(FALSE); m_tab.AddTab(&m_HSChartCtrl,_T("tomcat http")); // m_tab.SetActiveTab(0);//设置显示第一页; m_tab.ShowWindow(SW_SHOWNORMAL); return TRUE; / }
wanyhong 2014-03-06
  • 打赏
  • 举报
回复
楼主,我用CMFCTabCtrl创建不现实选项卡,能给个例子么?谢谢
Rony-H-Man 2013-12-12
  • 打赏
  • 举报
回复
你可以在每个框架类里面设一个钩子,然后判断每个窗口的活动状态,如果窗口是活动的,并且还检测到WM_LBUTTONDOWN消失,点击了关闭按钮,然后检测是哪一个窗口点击了,发送消息改变钩子状态就可以了。
蒋晟 2013-12-07
  • 打赏
  • 举报
回复
换活动页的话,会有AFX_WM_CHANGE_ACTIVE_TAB出来,在这里判断一下标签数目是否有变化吧。

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧