• 分辨率类[置顶] c# winform窗口自适应各种分辨率类


    文章结束给大家来个程序员笑话:[M]

        近期做项目时,遇到开辟的winform在自己电脑上可以畸形表现,共享到其他电脑就事儿不能表现了:

        1.当两个电脑分辨率相同时,无法表现完全,请检查form的autoscalemode属性是不是为none,并设为none

        2.分辨率不同时,可直接在form的构造函数中调用初始化函数之后, 加上一句AutoReSizeForm. SetFormSize(this);(对于自定义控件usercontrol也实用)

        public class AutoReSizeForm

        {

            static float SH

            {

                get

                {

                    return (float)Screen.PrimaryScreen.Bounds.Height / Properties.Settings.Default.Y;

                }

            }

            static float SW

            {

                get

                {

                    return (float)Screen.PrimaryScreen.Bounds.Width / Properties.Settings.Default.X;

                }

            }

            public static void SetFormSize(Control fm)

            {

                fm.Location = new Point((int)(fm.Location.X * SW), (int)(fm.Location.Y * SH));

                fm.Size = new Size((int)(fm.Size.Width * SW), (int)(fm.Size.Height * SH));

        每日一道理
    喜欢海,不管湛蓝或是光灿,不管平静或是波涛汹涌,那起伏荡漾的,那丝丝的波动;喜欢听海的声音,不管是浪击礁石,或是浪涛翻滚,那轻柔的,那澎湃的;喜欢看海,不管心情是舒畅的或是沉闷的,不管天气是晴朗的或是阴沉的,那舒心的,那松弛的……

                fm.Font = new Font(fm.Font.Name, fm.Font.Size * SH,fm.Font.Style,fm.Font.Unit,fm.Font.GdiCharSet,fm.Font.GdiVerticalFont);

                if (fm.Controls.Count!=0)

                {

                    SetControlSize(fm);

                }

            }

            private static void SetControlSize(Control InitC)

            {

                foreach (Control c in InitC.Controls)

                {

                    c.Location = new Point((int)(c.Location.X * SW), (int)(c.Location.Y * SH));

                    c.Size = new Size((int)(c.Size.Width * SW), (int)(c.Size.Height * SH));

                    c.Font = new Font(c.Font.Name, c.Font.Size * SH, c.Font.Style, c.Font.Unit, c.Font.GdiCharSet, c.Font.GdiVerticalFont);

                    if (c.Controls.Count != 0)

                    {

                        SetControlSize(c);

                    }

                }

            }

        }

    文章结束给大家分享下程序员的一些笑话语录: 据说有一位软件工程师,一位硬件工程师和一位项目经理同坐车参加研讨会。不幸在从盘山公路下山时坏在半路上了。于是两位工程师和一位经理就如何修车的问题展开了讨论。
    硬件工程师说:“我可以用随身携带的瑞士军刀把车坏的部分拆下来,找出原因,排除故障。”
    项目经理说:“根据经营管理学,应该召开会议,根据问题现状写出需求报告,制订计划,编写日程安排,逐步逼近,alpha测试,beta1测试和beta2测试解决问题。”
    软件工程说:“咱们还是应该把车推回山顶再开下来,看看问题是否重复发生。”

    --------------------------------- 原创文章 By
    分辨率和类
    ---------------------------------

  • 相关阅读:
    char/byte/short类型的加法和类型转换问题
    Java四种基本数据类型
    Git知识集锦
    解决给自己的博客添加百度统计不能验证的问题
    C++静态代码分析工具推荐——PVS-Studio
    Qt在控件未显示时如何获取正确的控件尺寸
    C#程序如何捕捉未try/catch的异常——不弹“XXX已停止工作”报错框
    win10下vs2015编译的程序如何运行在win7等系统(无需安装Redistributable)
    Qt分页导航控件
    win server 2008配置ftp无法登陆问题的解决办法
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3106829.html
Copyright © 2020-2023  润新知