添加类方法,代码如下:

        public static void setTag(Control cons){foreach (Control con in cons.Controls){con.Tag = con.Width + ":" + con.Height + ":" + con.Left + ":" + con.Top + ":" + con.Font.Size;if (con.Controls.Count > 0)setTag(con);}}public static void setControls(float newx, float newy, Control cons){foreach (Control con in cons.Controls){try{string[] mytag = con.Tag.ToString().Split(new char[] { ':' });float a = Convert.ToSingle(mytag[0]) * newx;con.Width = (int)a;a = Convert.ToSingle(mytag[1]) * newy;con.Height = (int)(a);a = Convert.ToSingle(mytag[2]) * newx;con.Left = (int)(a);a = Convert.ToSingle(mytag[3]) * newy;con.Top = (int)(a);Single currentSize = Convert.ToSingle(mytag[4]) * Math.Min(newx, newy);con.Font = new Font(con.Font.Name, currentSize, con.Font.Style, con.Font.Unit);if (con.Controls.Count > 0){setControls(newx, newy, con);}}catch{}}

窗体程序调用方法,代码如下:

#region 自动调整界面大小private float X;private float Y;private void Test_Load(object sender, EventArgs e){this.Resize += new EventHandler(Test_Resize);X = this.Width;Y = this.Height;Autosize.setTag(this);Test_Resize(new object(), new EventArgs());}private void Test_Resize(object sender, EventArgs e){if (X==0){Test_Load(new object(), new EventArgs());}else{float newx = (this.Width) / X;float newy = this.Height / Y;Autosize.setControls(newx, newy, this);}}#endregion

在窗体程序初始化后面增加一次load的方法调用,如下图:

C#窗体程序随电脑分辨率自动调整大小相关推荐

  1. 窗口根据屏幕分辨率自动调整大小

    double xrate ;  double yrate ; //构造函数中 Rectangle rect = new Rectangle();             rect = Screen.G ...

  2. 谷歌浏览器78版本打开后电脑分辨率更改

    谷歌浏览器78版本打开后电脑分辨率更改 现象: 打开浏览器(谷歌78.0.3904.70)电脑分辨率自动更改,关闭浏览器电脑分辨率恢复正常.重装问题依旧. 解决方法: 鼠标右键-打开文件位置,找到谷歌 ...

  3. WPF窗体自适应电脑分辨率的问题

    如何解决WPF窗体自适应电脑分辨率 前言 一.DockPanel 二.使用方法 1.引入代码 总结 前言 很多时候做WPF窗体的控件在运行展示的时候会有放大缩小的操作,这时候有些控件或者控件的文本就不 ...

  4. 计算机定期备份用什么程序,怎么让电脑定期自动备份文件或文件夹(让你的电脑每天定时自动为你备份重要的文件)...

    这是前几天百思特网一位网友提到的一个问题,他问我怎么让电脑每天定时自动备份重要的文件.我整理了操作流程,这里跟大家分享一下. 先说说这个技巧有什么用途,打个比方,假如你每天都在编辑一些文档,你把它们保 ...

  5. 肯德基app电脑端自动下单程序

    肯德基app电脑端自动下单程序_百度搜索 定制款肯德基APP电脑端自动下单软件程序 - 软件开发 - 天盟网-国内领先的IT技术需求服务平台_创新型软件众包服务接单网_知识技能服务威客网 https: ...

  6. Python 程序实现电脑自动定时关机

    Python 程序实现电脑自动定时关机 前言 因为有时候想让电脑在几个小时后关机,然而用cmd命令又有些麻烦,所以自己设计了一个简单的可视化操作界面,令电脑可以选择在几小时后关机 代码如下 #codi ...

  7. QT程序在不同分辨率电脑上字体变大,溢出控件

    QT程序在不同分辨率电脑上字体变大,溢出控件的解决方法 前言 原因 解决办法 1.main函数中设置全局字体 2.QT Creator中加入样式表 效果 前言 最近开发过程中,发现在本地运行QT程序, ...

  8. VMware(1):MacOS虚拟机无法设置自动调整大小(已解决)

    如果你在安装好MacOS虚拟机之后,发现页面分辨率特别小,页面不能够自适应客户端窗口:并且[查看 --> 自动调整大小]功能栏里的功能还是灰色的. 那请参照如下的步骤操作一套,包你解决: 点击可 ...

  9. vmware虚拟机怎么让窗口自动调整大小适应主机

    vmware是一款非常好用的虚拟机,大部分用户都会用vmware安装各种操作系统,安装后可能会出现一个问题,就是主机屏幕太小,无法完整显示VMware虚拟机界面,这时候就可以设置让VMware自动适应 ...

最新文章

  1. C++中的 Round(),floor(),ceil()
  2. ERROR: tensorboard 1.14.0 has requirement setuptools=41.0.0, but you'll have setuptools 39.1.0 whic
  3. 用Python对数学函数进行求值、求偏导
  4. 当分区数量与reducer task数量不一致时,会怎么样。
  5. 为啥通过MSIE判断浏览器信息
  6. PAT乙:1009 说反话
  7. 实战:判断mysql中当前用户的连接数-分组筛选
  8. 树莓派 树莓派 编c++_如何建立一个树莓派冰箱的冷冻监视器
  9. 可调稳压电源lm317实验报告_可调直流稳压电源实验报告 -
  10. 在 pandas 中画树状图,使用 squarify 画树状图
  11. 计算机视觉目标检测算法综述
  12. 中国城市乞丐的五大经典表情
  13. 利用CSS3实现图片3D旋转
  14. React项目中提示caniuse-lite已过时,建议更新
  15. 11 | 二进制编码:“手持两把锟斤拷,口中疾呼烫烫烫”?
  16. 快递单号查询免费api接口(PHP示例)
  17. 天地图覆盖物的添加,工具类的使用
  18. 高德地图逆地理编码Geocoder的getlocation获取不到位置信息
  19. 基于PHP+MySQL的家居装修主题网站
  20. java多线程百米赛跑_多线程-百米赛跑

热门文章

  1. [4G5G专题-76]:流程 - 4G LTE PLMN选择、扫频、小区搜索、系统消息读取、小区选择过程
  2. java爬虫系列(三)——漫画网站爬取实战
  3. win10每回打开程序都弹出“是否允许更改设置”提示怎么办
  4. Appium元素定位操作app
  5. 见山是山,见山不是山,见山只是山
  6. 混合模式程序集是针对“v1.1.4322”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集。
  7. 玩知乎五年,我赚了多少钱?
  8. 使用云祺虚拟机备份软件瞬时恢复H3C CAS 虚拟机
  9. 记录--嵌入式设备生成二维码
  10. 看果粉如何让拾主自动归还丢失的iPad