如何让TAB控件的子对话框随着TAB的父对话框的最大化而最大化
来源:互联网 发布:家居装修 淘宝 编辑:程序博客网 时间:2024/05/16 13:52
这个问题折磨了我两天。先说子对话框如何和tab空间关联的:
m_tabctl.InsertItem(0, _T("扫描"));
m_tabctl.InsertItem(1, _T("扫描选项"));
m_pagechoice.Create(IDD_DIALOGCHOICE, &m_tabctl);//创建两个对话框,父亲为列表控件
m_pagescan.Create(IDD_DIALOGSCAN, &m_tabctl);
m_pagescan.pChoice = &m_pagechoice;
INIT_EASYSIZE;
SetWindowPos((CWnd*)&m_hWnd, 0, 0, 800, 600, SWP_SHOWWINDOW);
//CRect rctab, reItem;
m_tabctl.GetClientRect(&rctab);//让两个对话框填充整个TAB空间区域
m_nWidth = rctab.left-rctab.right;
m_nHeight = rctab.bottom-rctab.top;
m_tabctl.GetItemRect(0,&reItem);
rctab.DeflateRect(0, reItem.bottom, 0,0);
m_pagescan.MoveWindow(&rctab);
m_pagechoice.MoveWindow(&rctab);
pDialog[0]=&m_pagescan;
pDialog[1] = &m_pagechoice;
pDialog[0]->ShowWindow(SW_SHOW);
pDialog[1]->ShowWindow(SW_HIDE);
m_CurSelTab = 0;
至于对话框中的控件如何随着对话框的变化而变化,我们使用EASYSIZE, 大家可以上网查查,有很多介绍,这里就不再说了。
最后说一下TAB控件的子对话框如何随着TAB的父对话框的最大化而最大化,这个问题,这个问题困扰了我两天。最后终于找到了方法。
首先在主对话里增加WM_SIZE处理消息,在函数中添加如下代码:
UPDATE_EASYSIZE;
if(m_pagescan.GetSafeHwnd() && m_pagechoice.GetSafeHwnd()){//一定要加上此个判断,否则会出现段错误,因为第一次调用的时候两个子对话框的句柄还没有。
m_tabctl.GetClientRect(&rctab);
//ScreenToClient(rctab);
m_nWidth = rctab.left-rctab.right;
m_nHeight = rctab.bottom-rctab.top;
m_tabctl.GetItemRect(0,&reItem);
rctab.DeflateRect(0, reItem.bottom, 0,0);
m_pagescan.MoveWindow(&rctab);
m_pagechoice.MoveWindow(&rctab);
}
最后的工作就是利用EASY_SIZE在每个子对话框里最每个对话框的控件在WM_SIZE消息里进行处理了,就不再多说。
- 如何让TAB控件的子对话框随着TAB的父对话框的最大化而最大化
- 如何让对话框中的控件随着对话框大小的改变而随之改变
- 如何让对话框窗口最大化
- 让自己写的子窗口可以被父对话框的TAB键切换,像一个控件一样
- MFC中如何修改对话框中控件的TAB顺序
- MFC 对话框中tab控件的使用
- VS2012 对话框控件的Tab顺序问题
- 最大化时子对话框上的控件无反应的解决办法
- MFC实现对话框最大化时控件的集体跟踪
- MFC 主对话框获得tab control子对话框控件的值
- MFC对话框:设置对话框控件的Tab顺序
- VS2010对话框:设置对话框控件的Tab顺序
- MFC 控件随着对话框大小的改变而改变
- 包含tab控件时,,如何让子控件跟随对话框大小变化(上)
- 包含tab控件时,,如何让子控件跟随对话框大小变化(下)
- 包含tab控件时,,如何让子控件跟随对话框大小变化(补充)
- 【VC++】如何最大化对话框
- Tab Control——属性页的子对话框中的CEdit控件无法输入的解决办法
- 打印字符串的全排列
- (转)常用内存数据库介绍(二)
- C++科学计算库,gsl
- 马太福音
- LINUX操作系统命令1
- 如何让TAB控件的子对话框随着TAB的父对话框的最大化而最大化
- 如何在CSDN论坛中抢分?
- (转)常用内存数据库介绍(三)
- 用Dreamweaver合理为为网页进行优化
- cpu亲合度(affinity)设置
- prototype图片滚动
- 'sqtr'ambiguous call to overloaded function
- (转)常用内存数据库介绍(四)
- 在火狐浏览器中设置FileUpload控件的宽度