欢迎访问 生活随笔!

凯发ag旗舰厅登录网址下载

当前位置: 凯发ag旗舰厅登录网址下载 > 编程语言 > c# >内容正文

c#

c# winform窗口自适应各种分辨率类 -凯发ag旗舰厅登录网址下载

发布时间:2025/1/21 c# 27 豆豆
凯发ag旗舰厅登录网址下载 收集整理的这篇文章主要介绍了 c# winform窗口自适应各种分辨率类 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
1 近期做项目时,遇到开发的winform在自己电脑上可以正常显示,共享到其他电脑就事儿不能显示了: 2 3 1.当两个电脑分辨率相同时,无法显示完全,请检查form的autoscalemode属性是否为none,并设为none 4 5 2.分辨率不同时,可直接在form的构造函数中调用初始化函数之后, 加上一句autoresizeform. setformsize(this);(对于自定义控件usercontrol也适用) 6 7 public class autoresizeform 8 9 { 10 static float sh 11 { 12 get 13 { 14 return (float)screen.primaryscreen.bounds.height / properties.settings.default.y; 15 } 16 } 17 static float sw 18 { 19 get 20 { 21 return (float)screen.primaryscreen.bounds.width / properties.settings.default.x; 22 } 23 } 24 25 26 27 28 public static void setformsize(control fm) 29 { 30 fm.location = new point((int)(fm.location.x * sw), (int)(fm.location.y * sh)); 31 fm.size = new size((int)(fm.size.width * sw), (int)(fm.size.height * sh)); 32 fm.font = new font(fm.font.name, fm.font.size * sh,fm.font.style,fm.font.unit,fm.font.gdicharset,fm.font.gdiverticalfont); 33 if (fm.controls.count!=0) 34 { 35 setcontrolsize(fm); 36 } 37 } 38 39 40 private static void setcontrolsize(control initc) 41 { 42 foreach (control c in initc.controls) 43 { 44 c.location = new point((int)(c.location.x * sw), (int)(c.location.y * sh)); 45 c.size = new size((int)(c.size.width * sw), (int)(c.size.height * sh)); 46 c.font = new font(c.font.name, c.font.size * sh, c.font.style, c.font.unit, c.font.gdicharset, c.font.gdiverticalfont); 47 if (c.controls.count != 0) 48 { 49 setcontrolsize(c); 50 } 51 } 52 } 53 }

 

总结

以上是凯发ag旗舰厅登录网址下载为你收集整理的c# winform窗口自适应各种分辨率类的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得凯发ag旗舰厅登录网址下载网站内容还不错,欢迎将凯发ag旗舰厅登录网址下载推荐给好友。

  • 上一篇:
  • 下一篇:
网站地图