鼠标光标移动的缩放分辨率

时间:2019-05-29 21:23:40

标签: c# winforms

我的程序现在基于固定的分辨率执行鼠标操作。我现在想更改它,使其可以在所有分辨率下使用。

我尝试了下面可以看到的代码,但是我将鼠标移到第二个屏幕的左下角。

[DllImport("user32.dll", EntryPoint = "SetCursorPos")]
private static extern bool SetCursorPos(int X, int Y);

int currentX = Screen.PrimaryScreen.Bounds.Width;
int currentY = Screen.PrimaryScreen.Bounds.Height;

var xScale = currentX / 1920;
var yScale = currentY / 1080;
InputSimulator sim = new InputSimulator();
sim.Mouse.LeftButtonClick();
System.Threading.Thread.Sleep(100);
SetCursorPos(193, 210);
sim.Mouse.LeftButtonClick();
System.Threading.Thread.Sleep(100);
SetCursorPos(263*currentX, 841*currentY);
sim.Mouse.LeftButtonClick();
SetCursorPos(960*currentX, 540*currentY);

我希望该程序能够正确计算我的鼠标移动,以便为所有用户提供该小程序。

0 个答案:

没有答案