博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c# winform窗口自适应各种分辨率类
阅读量:5171 次
发布时间:2019-06-13

本文共 1913 字,大约阅读时间需要 6 分钟。

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 SH11          {12              get13              {14                  return (float)Screen.PrimaryScreen.Bounds.Height / Properties.Settings.Default.Y;15              }16          }17          static float SW18          {19              get20              {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      }

 

转载于:https://www.cnblogs.com/rinack/archive/2013/05/31/3109850.html

你可能感兴趣的文章
【Mood-20】滴滤咖啡做法 IT工程师加班必备 更健康的coffee 项目经理加班密鉴
查看>>
读《构建之法-软件工程》第四章有感
查看>>
使用 Printf via SWO/SWV 输出调试信息
查看>>
.net 分布式架构之分布式锁实现(转)
查看>>
Problem E: Automatic Editing
查看>>
SpringBoot 使用 MyBatis 分页插件 PageHelper 进行分页查询
查看>>
《DSP using MATLAB》Problem 6.17
查看>>
微信公众平台开发实战Java版之如何网页授权获取用户基本信息
查看>>
一周TDD小结
查看>>
sizeof与strlen的用法
查看>>
Linux 下常见目录及其功能
查看>>
开源框架中常用的php函数
查看>>
nginx 的提升多个小文件访问的性能模块
查看>>
set&map
查看>>
集合类总结
查看>>
4.AE中的缩放,书签
查看>>
给一次重新选择的机会_您还会选择程序员吗?
查看>>
Mysql MHA高可用集群架构
查看>>
心急的C小加
查看>>
编译原理 First,Follow,select集求法
查看>>