MFC窗口和控件大小等比例变化
来源:互联网 发布:香港网络专线 编辑:程序博客网 时间:2024/05/21 18:38
第一步:OnInitDialog里保存对话框及其所有子窗体的Rect区域
CRect rect;GetWindowRect(&rect);m_listRect.AddTail(rect);//对话框的区域CWnd* pWnd = GetWindow(GW_CHILD);//获取子窗体while(pWnd){pWnd->GetWindowRect(rect);//子窗体的区域m_listRect.AddTail(rect); //CList<CRect,CRect> m_listRect成员变量pWnd = pWnd->GetNextWindow();//取下一个子窗体}
第二步:响应OnSize消息
if (listRect.GetCount() > 0) { CRect dlgNow; GetWindowRect(&dlgNow); POSITION pos = listRect.GetHeadPosition();//第一个保存的是对话框的Rect CRect dlgSaved; dlgSaved = listRect.GetNext(pos); ScreenToClient(dlgNow); float x = dlgNow.Width() * 1.0 / dlgSaved.Width();//根据当前和之前保存的对话框的宽高求比例 float y = dlgNow.Height() *1.0/ dlgSaved.Height(); ClientToScreen(dlgNow); CRect childSaved; CWnd* pWnd = GetWindow(GW_CHILD); while(pWnd) { childSaved = listRect.GetNext(pos);//依次获取子窗体的Rect childSaved.left = dlgNow.left + (childSaved.left - dlgSaved.left)*x;//根据比例调整控件上下左右距离对话框的距离 childSaved.right = dlgNow.right + (childSaved.right - dlgSaved.right)*x; childSaved.top = dlgNow.top + (childSaved.top - dlgSaved.top)*y; childSaved.bottom = dlgNow.bottom + (childSaved.bottom - dlgSaved.bottom)*y; ScreenToClient(childSaved); pWnd->MoveWindow(childSaved); pWnd = pWnd->GetNextWindow(); } } //Invalidate(); //强制重绘窗口
来自:http://www.cnblogs.com/wind-net/p/3159810.html
0 0
- MFC窗口和控件大小等比例变化
- MFC窗口和控件大小等比例变化
- MFC窗口和控件大小等比例变化
- 控件大小随窗口等比例变化
- MFC窗口和控件大小等比例缩放
- [MFC] 控件大小跟随对话框大小比例变化 [大三TJB_708]
- [MFC] 控件大小跟随对话框大小比例变化 [大三TJB_708]
- [MFC] 控件大小跟随对话框大小比例变化 [转]
- MFC控件随窗口大小变化
- MFC 控件随窗口大小变化
- MFC中的控件随窗口大小变化
- mfc控件自适应窗口大小,随窗口大小变化而变化
- C#控件窗口大小变化时同时改变控件比例的实现
- 控件大小随窗口变化的方法(MFC)
- C++ MFC控件随着窗口大小变化而自适应
- MFC 根据窗口的变化来设置控件的大小
- C++ MFC控件随着窗口大小变化而自适应
- 控件随着窗口大小变化
- GetModuleFileName获取当前进程已加载模块的文件的完整路径
- (13)JMM ----- 深入理解Java内存模型之系列篇(不理解 先转漫漫看)
- Android 代码命名规范 -- 提高代码可以读性
- strcpy与strcpy_s的问题
- List接口、Set接口和Map接口
- MFC窗口和控件大小等比例变化
- libxml2使用
- jQuery基础学习之---cookie换肤
- Search in Rotated Sorted Array I && II
- android中打印函数调用栈、内存使用、屏幕分辨率
- 我的游戏开发收藏夹
- android Intent返回数据,回调数据,startActivityForResult用法
- HDU2059 龟兔赛跑 动态规划 DP
- ArcGIS API for WPF之最短路径分析.doc