如何在Windows窗体应用程序中移动光标?

时间:2014-04-25 20:14:08

标签: c# forms position cursor move

我正在编写一个应用程序,我需要以编程方式移动光标。我试过写作:

Cursor.Position = new Point(50, 50);

但它不起作用。我在c#中编写了一个Windows窗体应用程序。

我希望有人可以帮助我:) 在此先感谢:)

2 个答案:

答案 0 :(得分:2)

假设您需要点击按钮:

首先添加InteropServices命名空间:

using System.Runtime.InteropServices;

然后创建按钮点击事件

[DllImport("User32.Dll")]
public static extern long SetCursorPos(int x, int y);
private void button1_Click(object sender, EventArgs e)
{
    SetCursorPos(50,50);
}

看看这个:

[https://stackoverflow.com/questions/647236/moving-mouse-cursor-programmatically][1]

答案 1 :(得分:0)

将一个按钮拖到表单上,然后双击。

然后你应该得到一个代码。

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Cursor.Position = new Point(50, 50);
        }
    }
}

单击该按钮后,功能 - button1_Click 将触发并移动光标。 也许在这里写下你想要做的事情,我怀疑你需要一个循环

ALSO

这可能有助于你的工作。

  Cursor.Position = 
new Point(Form1.MousePosition.X + 50, Form1.MousePosition.Y + 50);

Form1.MousePosition是表单上鼠标的当前位置。

所以上面的代码会将鼠标向右移动50个单位,从当前位置向下移动50个单位。

还有一个form1_load事件,双击表单并使用它。