相关疑难解决方法(0)

Java在多个监视器环境中获取鼠标位置

我在互联网上搜索了一段时间,但我找不到任何解决方案.我知道你可以获得当前的鼠标位置

PointerInfo a = MouseInfo.getPointerInfo();
Point b = a.getLocation();
Run Code Online (Sandbox Code Playgroud)

问题是在多环境屏幕中我只是相对于主屏幕获得鼠标位置.这意味着如果第二个屏幕位于我收到的主屏幕左侧,例如X:-917.0位置Y:-137.0.我知道这些值取决于屏幕分辨率和显示器的顺序.是否有可能在当前活动屏幕上获取鼠标位置?

亲切的问候

java mouse screen

3
推荐指数
1
解决办法
3224
查看次数

查询Windows显示缩放比例

我想Windows以编程方式查询显示缩放设置: 在这种情况下,我希望它返回,125因为我将显示配置为125%缩放。根据这篇Windows API C++文章,可以使用以下代码:

// Get desktop dc
desktopDc = GetDC(NULL);
// Get native resolution
horizontalDPI = GetDeviceCaps(desktopDc,LOGPIXELSX);
verticalDPI = GetDeviceCaps(desktopDc,LOGPIXELSY);
Run Code Online (Sandbox Code Playgroud)

但是,此代码始终返回96and96对于水平和垂直DPI,这会转换为100%缩放(根据提供的表):

这个输出是错误的,因为我通过缩放仍然得到相同的结果125%。如何做呢?我正在编程,Java以便我可以C++使用JNA. Windows API解决方案是首选,但其他一切(例如.bat脚本或registry查询)也可以,只要它对于从到 的所有Windows版本都是可靠的。710

c++ windows winapi

3
推荐指数
1
解决办法
3630
查看次数

标签 统计

c++ ×1

java ×1

mouse ×1

screen ×1

winapi ×1

windows ×1