小编use*_*360的帖子

如何计算坐标以编程方式移动鼠标光标?

我有下面的代码,并且知道它用于将鼠标光标移动到屏幕上的特定点。

我不明白的是为什么 X 和 Y 坐标必须乘以 65535 并除以屏幕大小。

它与从浮点型到整数类型的转换有什么关系吗?

public void MoveMouse(PointF p)
{
    if (IntPtr.Size == 8)
    {
        var move = new INPUT64[1];
        move[0] = new INPUT64();
        move[0].mi.dx = (int)(p.X * 65535 / ScreenSize.Width);
        move[0].mi.dy = (int)(p.Y * 65535 / ScreenSize.Height);
        move[0].mi.dwFlags = MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE;
        SendInput(1, move, Marshal.SizeOf(move[0]));
    }
    else
    {
        var move = new INPUT32[1];
        move[0] = new INPUT32();
        move[0].mi.dx = (int)(p.X * 65535 / ScreenSize.Width);
        move[0].mi.dy = (int)(p.Y * 65535 / ScreenSize.Height);
        move[0].mi.dwFlags = MOUSEEVENTF_ABSOLUTE | …
Run Code Online (Sandbox Code Playgroud)

.net c# mouse logic move

2
推荐指数
1
解决办法
1435
查看次数

为什么Form需要设置为null?

我正在学习C#,我看到的示例程序我找到了这样的代码:

static CalibrationForm form = null;
Run Code Online (Sandbox Code Playgroud)

还有这个

public static void HideCalibration()
{
 form.Hide();
 form.Dispose();
 form = null;
}
Run Code Online (Sandbox Code Playgroud)

表单应该设置为null是否有任何特殊原因?

表单的含义是什么设置为null?

.net c# forms null dispose

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

标签 统计

.net ×2

c# ×2

dispose ×1

forms ×1

logic ×1

mouse ×1

move ×1

null ×1