怎样让对话框上的控件随对话框调整大小?
一个可调整大小的对话框,上有若干控件。想要在对话框改变大小的时候,让上面的控件同时调整大小适应对话框的大小变化。获得原窗口大小;获得控件大小;CWnd::OnSize(n...
一个可调整大小的对话框,上有若干控件。想要在对话框改变大小的时候,让上面的控件同时调整大小适应对话框的大小变化。
获得原窗口大小;
获得控件大小;
CWnd::OnSize(nType, cx, cy);
获得新窗口大小。
比较变化值,控.movewindow(,,..)
我要C#的具体代码,谁给我写下C#具体代码,O(∩_∩)O~ 展开
获得原窗口大小;
获得控件大小;
CWnd::OnSize(nType, cx, cy);
获得新窗口大小。
比较变化值,控.movewindow(,,..)
我要C#的具体代码,谁给我写下C#具体代码,O(∩_∩)O~ 展开
2个回答
展开全部
大哥,代码如下:
//控件随窗体自动缩放
string[] tmp = new string[2];
tmp = ((Form)sender).Tag.ToString().Split(',');
float width = (float)((Form)sender).Width / (float)Convert.ToInt16(tmp[0]);
float heigth = (float)((Form)sender).Height / (float)Convert.ToInt16(tmp[1]);
((Form)sender).Tag = ((Form)sender).Width.ToString() + "," + ((Form)sender).Height;
foreach (Control control in ((Form)sender).Controls)
{
control.Scale(new SizeF(width, heigth));
}
使用该代码注意事项:1,此段代码基本通用。2,此段代码写在窗体的加载事件中。3,若窗体需要缩小,请再写在窗体的SizeChanged事件中。4,若还不懂百度Hi直接联系本人。5,大哥,我手都敲累了,再加点分吧~~
//控件随窗体自动缩放
string[] tmp = new string[2];
tmp = ((Form)sender).Tag.ToString().Split(',');
float width = (float)((Form)sender).Width / (float)Convert.ToInt16(tmp[0]);
float heigth = (float)((Form)sender).Height / (float)Convert.ToInt16(tmp[1]);
((Form)sender).Tag = ((Form)sender).Width.ToString() + "," + ((Form)sender).Height;
foreach (Control control in ((Form)sender).Controls)
{
control.Scale(new SizeF(width, heigth));
}
使用该代码注意事项:1,此段代码基本通用。2,此段代码写在窗体的加载事件中。3,若窗体需要缩小,请再写在窗体的SizeChanged事件中。4,若还不懂百度Hi直接联系本人。5,大哥,我手都敲累了,再加点分吧~~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询