用c#移动鼠标

时间:2011-11-18 16:51:34

标签: wpf

我有一个带坐标的二维数组,我想让鼠标移动那些坐标在WPF应用程序中创建的特定模式。你能帮助我吗?我已经尝试过Cursor类但它不起作用。显然我做错了什么。

private void SetPosition( int a, int b)
{
    this.Cursor = new Cursor(Cursor.Current.Handle);
    Cursor.Position = new Point(a, b);
}

这是我使用a和b来自数组的方法。提前谢谢!

PS该方法位于每秒触发20次的事件中。

2 个答案:

答案 0 :(得分:11)

我不完全确定在WPF中是否有更好的方法(看起来你使用的代码是针对WinForms的),但在SetCursorPos上使用Platform Invoke似乎做了特技:

private void SetPosition(int a, int b)
{
    SetCursorPos(a, b);
}

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

答案 1 :(得分:3)

您必须使用 SendInput

http://inputsimulator.codeplex.com/让它变得有点轻松