像素位置不准确

时间:2017-12-20 21:51:45

标签: java

我使用笔记本电脑屏幕在戴尔Inspiron 13 5000(一台拥有1920 * 1080像素的13英寸笔记本电脑)上使用Windows 10。代码:

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Robot robot = new Robot();
robot.mouseMove(screenSize.getWidth() / 2, screenSize.getHeight() / 2);
//screenSize.getWidth() = 1920, getHeight() = 1080

但是这并没有将鼠标移动到屏幕中间,而是将鼠标移动到中间位置。此外,当我转到https://www.whatismyscreenresolution.com/时,它表示我的分辨率为1280 * 720.但在设置中它表示我的分辨率为1920 * 1080.我想运行基于1920 * 1080分辨率的程序。为什么会这样?我也尝试了这个,但它将指针移动到小于中间位置:

   robot.mouseMove(screensize.getWidth() / 2 * 1280 / 1920, screensize.getHeight() / 2 * 720 / 1080);

这是计算机制造商的问题吗?我将屏幕缩放比例设置为100%,screenSize.getWidth()= 2880,screenSize.getHeight()= 1620,这很奇怪。

0 个答案:

没有答案