当前位置: 首页 > 面试题库 >

Windows缩放

壤驷麒
2023-03-14
问题内容

Windows 8/10已开始包含一个滑块,该滑块可缩放GUI元素的大小,右键单击桌面->显示。对于拥有4k笔记本电脑屏幕的同事,则为250%,而在4k
28英寸屏幕上使用相同分辨率的同事,则为150%。

如何以编程方式读取该值?我需要调整一些图形,使其在所有屏幕上看起来都一样。

我正在Eclipse RCP应用程序上使用Java进行工作,但是通过JNI使用C或C ++的方法也可以使用。我一直在环顾四周,但找不到任何东西。


问题答案:

也许这个答案从这里可以帮助你:

[DllImport("gdi32.dll")]
static extern int GetDeviceCaps(IntPtr hdc, int nIndex);
public enum DeviceCap
{
    VERTRES = 10,
    DESKTOPVERTRES = 117,

    // http://pinvoke.net/default.aspx/gdi32/GetDeviceCaps.html
}


private float getScalingFactor()
{
    Graphics g = Graphics.FromHwnd(IntPtr.Zero);
    IntPtr desktop = g.GetHdc();
    int LogicalScreenHeight = GetDeviceCaps(desktop, (int)DeviceCap.VERTRES);
    int PhysicalScreenHeight = GetDeviceCaps(desktop, (int)DeviceCap.DESKTOPVERTRES);

    float ScreenScalingFactor = (float)PhysicalScreenHeight / (float)LogicalScreenHeight;

    return ScreenScalingFactor; // 1.25 = 125%
}


 类似资料:
  • 在Windows中,您可以通过以下方式压缩某些文件 有没有一种方法可以在不需要安装任何第三方软件的情况下,从脚本(.bat文件)中应用这些能力?

  • 问题内容: 我需要实现变焦为包含在。我已经通过覆盖方法和调用来成功进行缩放。 这是不正常:对的和的规模如预期,但一定会得到的和这样的寄存器在预分频的位置。我能做什么?感谢您的阅读。 问题答案: 显示了如何使用明确的转化方法扩展鼠标坐标:,,和。)。

  • 本文向大家介绍Windows下安装MySQL 5.7.17压缩版中遇到的坑,包括了Windows下安装MySQL 5.7.17压缩版中遇到的坑的使用技巧和注意事项,需要的朋友参考一下 首先下载最新的MySQL 5.7.17 Community 压缩版 for Windows 64-bit: 官方下载地址:http://dev.mysql.com/downloads/mysql/ 然后解压到安装目录

  • 问题内容: 注意:这与放大时如何渲染现有画布元素有关,而与在画布表面上渲染线条或图形无关。换句话说,这与缩放元素的插值有关,而与在画布上绘制的图形的抗锯齿无关。我不关心浏览器如何画线;我关心的是浏览器在放大时如何渲染canvas元素本身。 是否可以通过编程更改画布属性或浏览器设置以在缩放 元素时禁用插值?跨浏览器解决方案是理想的,但不是必需的。基于Webkit的浏览器是我的主要目标。性能非常重要。

  • 该行为会自动在容器元素中创建事件监听器来处理元素的缩放和平移动作,可支持鼠标事件和触摸事件。 d3.behavior.zoom() 构造一个新的缩放行为。 zoom(selection) 应用缩放行为到指定的选择器selection,注册所需的事件监听器,支持缩放和拖拽行为。 zoom.translate([translate]) 指定当前的缩放平移向量为translate;如果未指定transl

  • zoom(int $scale = 100): self int $scale $config = ['path' => './tests']; $excel = new \Vtiful\Kernel\Excel($config); ​ $fileObject = $excel->fileName("tutorial01.xlsx"); ​ $fileObject->header(['name'