zoukankan      html  css  js  c++  java
  • C#不同操作系统下,界面大小不一的原因

    在不同的操作系统版本或语言版本之间,系统的默认字体是不同的。
    在DesignTime,系统会根据AutoScaleMode的设置不同,将一个参考值赋值给Form的AutoScaleDimensions属性。  
    this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); Note: 当前系统为英文。因此,当前字体高度为13,宽度为6   
    在运行时,CurrentAutoScaleDimensions属性会提取当前系统的相关设置。生成另外一个计算值。AutoScaleFactor属性表现了两个值的比值,作为下一步缩放的缩放因子。
    比如,在日文系统下运行时,CurrenAutoScaleDimensions为(6f, 12f)。AutoScaleFactor为(1f, 0.9xxxf).  
    System.Win.Forms.ContainerControl会在OnLayout(还包括一堆其它的事件中)中对调用自己的 PerformAutoScale方法,其中对自己和它子孙调用Scale方法,并将AutoScaleFactor传入。从而实现调整他们的位置和大小,以适应当前操作系统的设置。
  • 相关阅读:
    算法(两数之和)
    算法(动态规划二)
    算法(动态规划一)n个学生问题
    Navigator 对象
    Window 对象
    JavaScript 运算符
    JavaScript 全局属性/函数
    JavaScript RegExp 对象
    JavaScript String 对象
    JavaScript Number 对象
  • 原文地址:https://www.cnblogs.com/itelite/p/2421655.html
Copyright © 2011-2022 走看看