Csharp/C#教程:获得屏幕规模分享


获得屏幕规模

我们可以获得分辨率,屏幕上的内容是Screen类。 所以,我们应该使用Screen.WorkingArea.WidthScreen.WorkingArea.Height ,如果我们想在屏幕中心放置一些东西。

但是,在Windows 8.1(不确定其他操作系统)中,如果它们看起来太小,就有可能在屏幕上缩放项目。 您可以通过调用桌面上的上下文菜单,选择“屏幕分辨率”,然后选择“使文本和其他项目更大或更小”来检查它。

问题是,它似乎确实提高了屏幕分辨率! 因此, Screen.WorkingArea.WidthScreen.WorkingArea.Height将为您提供缩放值,并指向Screen.WorkingArea.Width/2 Screen.WorkingArea.Height/2将不再位于实际屏幕的中心(200%缩放此点将在屏幕的右下角)。 这可能会阻碍UI项目的大量放置。

那么,是否有可能获得缩放的价值? 我找不到任何包含此信息的类。

检索DPI的大多数方法取决于现有控件,有时可能不方便。 但是DPI总是可以从注册表中检索出来。 在C#中:

 using Microsoft.Win32; //... var currentDPI = (int)Registry.GetValue("HKEY_CURRENT_USER\Control Panel\Desktop", "LogPixels", 96); 

规模将是

上述就是C#学习教程:获得屏幕规模分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

 var scale = 96/(float)currentDPI; 

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/990201.html

(0)
上一篇 2021年12月24日
下一篇 2021年12月24日

精彩推荐