包含tab控件时,,如何让子控件跟随对话框大小变化(补充)
来源:互联网 发布:微信生鲜小程序源码 编辑:程序博客网 时间:2024/05/20 13:05
由于是使用一个简单的tab控件,所以内容很简略;
在实际使用中,更多的处理则是交给其父窗口进行处理的,从而根据实际的项目特性进行制作。
在项目中,发现希望能够在父窗口中也能对切换标签的消息进行处理时,就需要对以下的命令进行改写;
afx_msg void OnTcnSelchanging(NMHDR *pNMHDR, LRESULT *pResult); afx_msg void OnTcnSelchange(NMHDR *pNMHDR, LRESULT *pResult);将其改为
afx_msg BOOL OnTcnSelchanging(NMHDR *pNMHDR, LRESULT *pResult);afx_msg BOOL OnTcnSelchange(NMHDR *pNMHDR, LRESULT *pResult);同时其反射消息定义也由原先的
ON_NOTIFY_REFLECT(TCN_SELCHANGING, &CTabPage::OnTcnSelchanging)ON_NOTIFY_REFLECT(TCN_SELCHANGE, &CTabPage::OnTcnSelchange)改为ON_NOTIFY_REFLECT_EX(TCN_SELCHANGING, &CTabPage::OnTcnSelchanging)ON_NOTIFY_REFLECT_EX(TCN_SELCHANGE, &CTabPage::OnTcnSelchange)
其实主要就是ON_NOTIFY_REFLECT与ON_NOTIFY_REFLECT_EX这两个宏的处理了,根据MSDN说明,同样是拦截消息,前者是拦截后自己使用,不在反馈给父窗口;而后者,则是可以在自己处理的情况下,继续转交给父窗口进行处理的,不过,在其函数中,唯有return false时才可让父窗口接收到该消息,若是为true时,则无法令其接收到消息,所以,最终其函数改为
BOOL CTabPage::OnTcnSelchange(NMHDR *pNMHDR, LRESULT *pResult){ShowCurPage(SW_SHOW);*pResult= 0;return FALSE;}然后在父窗口中,可以通过ON_NOTIFY(TCN_SELCHANGE,IDC_TAB,OnSelectChanging)处理该tab控件消息voidCMTSWDlg::OnSelectChanging(NMHDR* pNMHDR,LRESULT* pResult){int a = m_TabCtrl.GetCurSel();*pResult = 0;}
特此记录下,方便以后使用。
- 包含tab控件时,,如何让子控件跟随对话框大小变化(补充)
- 包含tab控件时,,如何让子控件跟随对话框大小变化(上)
- 包含tab控件时,,如何让子控件跟随对话框大小变化(下)
- 在CFormView中如何让对话框内的控件大小跟随单文档的大小变化
- QT中如何让控件跟随随窗口大小变化
- [MFC] 控件大小跟随对话框大小比例变化 [大三TJB_708]
- [MFC] 控件大小跟随对话框大小比例变化 [大三TJB_708]
- [MFC] 控件大小跟随对话框大小比例变化 [转]
- 如何让TAB控件的子对话框随着TAB的父对话框的最大化而最大化
- 如何让窗口最大化 并让控件跟随变化
- 让对话框内的控件在窗体大小发生变化时随之变化
- 【MFC应用】让对话框内的控件在窗体大小发生变化时随之变化
- 如何让控件随窗体的大小变化而变化
- MFC 控件跟随对话框变化比例变化 笔记
- MFC对话框中的控件随着对话框大小变化而变化
- 对话框控件大小随窗口的大小变化而变化
- 控件随对话框窗体大小而变化
- Tab控件子主对话框发送消息
- Mac上安装Protocol Buffers
- SVN常用命令(检出、更新、删除、上传提交等)
- 后台点击按钮 调用控制台程序 传参数
- STM32固件库使用分析(转)
- 数据库连接池入门
- 包含tab控件时,,如何让子控件跟随对话框大小变化(补充)
- 目标检测中背景建模方法
- GMM的EM算法实现
- SipDroid
- try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后
- What really happens when you navigate to a URL
- Caused by: org.hibernate.HibernateException: Unable to instantiate default tuplizer [org.hibernate.
- 输出字母等腰三角形
- ScheduledExecutorService执行周期任务