MFC窗体控件随窗体变化
/定义函数、变量//void resize();POINT Old;//存放对话框的宽和高/// void CNewFrameDlg::OnSize(UINT nType, int cx, int cy)
{CDialog::OnSize(nType, cx, cy);if(nType==SIZE_RESTORED||nType==SIZE_MAXIMIZED)//窗体大小发生变动。处理函数resize{resize();}
}void CNewFrameDlg::resize()
{float fsp[2];POINT Newp; //获取现在对话框的大小CRect recta; GetClientRect(&recta); //取客户区大小Newp.x=recta.right-recta.left;Newp.y=recta.bottom-recta.top;fsp[0]=(float)Newp.x/Old.x;fsp[1]=(float)Newp.y/Old.y;CRect Rect;int woc;CPoint OldTLPoint,TLPoint; //左上角CPoint OldBRPoint,BRPoint; //右下角HWND hwndChild=::GetWindow(m_hWnd,GW_CHILD); //列出所有控件while(hwndChild) { woc=::GetDlgCtrlID(hwndChild);//取得IDif (woc == IDC_LIST1||woc==IDC_STATICFRAME){GetDlgItem(woc)->GetWindowRect(Rect);ScreenToClient(Rect);OldTLPoint = Rect.TopLeft();TLPoint.x = long(OldTLPoint.x*fsp[0]);TLPoint.y = long(OldTLPoint.y*fsp[1]);OldBRPoint = Rect.BottomRight();BRPoint.x = long(OldBRPoint.x *fsp[0]);BRPoint.y = long(OldBRPoint.y *fsp[1]);Rect.SetRect(TLPoint,BRPoint);if (woc == IDC_LIST1){GetDlgItem(woc)->MoveWindow(CRect(TLPoint.x,TLPoint.y,TLPoint.x+(OldBRPoint.x-OldTLPoint.x),BRPoint.y/*TLPoint.y+(OldBRPoint.y-OldTLPoint.y)*/),TRUE);}else{GetDlgItem(woc)->MoveWindow(Rect,TRUE);}hwndChild=::GetWindow(hwndChild, GW_HWNDNEXT); }}Old=Newp;
}
转载于:https://www.cnblogs.com/rogee/archive/2010/12/30/1922182.html
MFC窗体控件随窗体变化相关推荐
- 窗体控件随窗体大小改变(仍有不足)
private void frmWatch_Load(object sender, EventArgs e){FormWidth = this.Width;FormHeight = this.Heig ...
- 窗体控件随窗体大小改变(包括字体大小)
文章参考:http://blog.csdn.net/loveme1204/archive/2007/12/24/1964577.aspx 是一篇vb编写的,我只是把它翻译成c#的. 其实Anchor和 ...
- C#窗体控件随窗体变大而变大
PC 环境 win10 ,编译器 visual studio2015 private float X;private float Y;private void setTag(Control cons) ...
- vba数据类型,运算符,内置函数,循环判断语句,窗体控件
文章目录 VBA基本数据类型 示例代码 声明常量,运算符和表达式 内置函数 代码 可视化编程 判断语句 循环语句 窗体控件,窗体的加载卸载 listbox,checkbox,combobox VBA基 ...
- winformbutton边框怎么改_C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法
C# WinForm窗体控件Panel修改边框颜色以及边框宽度方法 1.新建组件这里可以自定义一个Panel控件起名为PanelEx 2.增加一个BoderColor属性和BoderSize属性 pr ...
- C#如何实现窗体控件大小随窗体大小变化(包括字体)
如图,拖动窗体即可改变控件大小(包括字体) 窗体尺寸:345*315 窗体尺寸:603*509 项目资源如下 源码如下 using System; using System.Collections.G ...
- winform窗体控件
目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文本框)控件 4.RichTextBox控件 5.NumericUpDown控件 6.Button(按钮)控件 7.Gro ...
- C#学习(十五)——窗体控件用法大全
C#控件及常用设计整理 1.窗体 1.1.常用属性** (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体. (2) WindowState属性: 用来获取或设置窗 ...
- viewstate 解码 php,.NET_asp.net中ViewState的用法详解,在web窗体控件设置为runat = serv - phpStudy...
asp.net中ViewState的用法详解 在web窗体控件设置为runat = "server",这个控件会被附加一个隐藏的属性_ViewState,_ViewState存放了 ...
最新文章
- 通过AI翻译大脑信息
- 首个全球智慧城市在线社区启动 将锁定对城市发展构成挑战的困难
- Coursera在线学习---第十节.大规模机器学习(Large Scale Machine Learning)
- OpenCASCADE:Mac OS X平台使用Code::Blocks构建OCCT
- Linux基础命令介绍
- OpenCV学习笔记(十二):边缘检测:Canny(),Sobel(),Laplace(),Scharr滤波器
- oracle的sga
- python中loop的用法_python-在Tensorflow中使用tf.while_loop更新变量
- 学习之路/免费的图库推荐
- 在iis6.0上配置Gzip
- c语言中结构体头文件是什么,函数形参里有结构体指针,为什么在头文件生
- Android自定义属性时TypedArray的使用方法
- 天堂2服务器自动停止,为什么我一进天堂2就与服务器连接中断??/
- Python 农历公历日期转换
- Java面试题及答案2020,安卓java编程软件app
- 笔记记录软件:NoteRecorder
- 2021年度科技行业有哪些大事件?“杰出科技奖”公布36家企业领先科技技术
- 双击打开excel内容不显示而显示灰色
- Linux下提高硬盘读写速度
- 7.STM32C8T6+DHT11在OLED上显示 温度,湿度