由于某种特殊需求,我需要在winform程序中模拟鼠标点击事件,经过Google,终于找到了如下解决方案。

来源:互联网 发布:天猫淘宝内购券微信群 编辑:程序博客网 时间:2024/04/30 13:06

来自:http://outofmemory.cn/code-snippet/1708/how-winform-moni-shubiao-click-event

using System;using System.Windows.Forms;using System.Runtime.InteropServices;public class Form1 : Form{   [DllImport("user32.dll",CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]   public static extern void mouse_event(uint dwFlags, uint dx, uint dy, uint cButtons, uint dwExtraInfo);   private const int MOUSEEVENTF_LEFTDOWN = 0x02;   private const int MOUSEEVENTF_LEFTUP = 0x04;   private const int MOUSEEVENTF_RIGHTDOWN = 0x08;   private const int MOUSEEVENTF_RIGHTUP = 0x10;   public Form1()   {   }   public void DoMouseClick()   {      //Call the imported function with the cursor's current position      int X = Cursor.Position.X;      int Y = Cursor.Position.Y;      mouse_event(MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);   }   //...other code needed for the application}