View Code [DllImport("user32.dll", EntryPoint = "mouse_event", SetLastError = true)]
private static extern int mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo);
const int MOUSEEVENTF_MOVE = 0x0001; // 移動滑鼠
const int MOUSEEVENTF_LEFTDOWN = 0x0002;// 類比滑鼠左鍵按下
const int MOUSEEVENTF_LEFTUP = 0x0004; //類比滑鼠左鍵抬起
const int MOUSEEVENTF_RIGHTDOWN = 0x0008; //類比滑鼠右鍵按下
const int MOUSEEVENTF_RIGHTUP = 0x0010;// 類比滑鼠右鍵抬起
const int MOUSEEVENTF_MIDDLEDOWN = 0x0020; //類比滑鼠中鍵按下
const int MOUSEEVENTF_MIDDLEUP = 0x0040; //類比滑鼠中鍵抬起
const int MOUSEEVENTF_ABSOLUTE = 0x8000; //標示是否採用絕對座標
static void Main(string[] args)
{
// 移動滑鼠
mouse_event(MOUSEEVENTF_MOVE, 400, 0, 0, 0);
//點擊滑鼠右鍵
mouse_event(MOUSEEVENTF_RIGHTDOWN | MOUSEEVENTF_RIGHTUP, 410, 0, 0, 0);
Console.ReadLine();
}
調用的時候可以對系統API進行二次封裝。
Public Static Void MouseRightClick()
{
//點擊滑鼠右鍵
mouse_event(MOUSEEVENTF_RIGHTDOWN | MOUSEEVENTF_RIGHTUP, 410, 0, 0, 0);
}
適合情境:LinkButton如果想要彈出右鍵菜單的時候,可以在Click事件中通過API類比滑鼠右擊事件。