狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

Windows下C#模擬鼠標點擊

admin
2021年1月29日 16:16 本文熱度 2729

c#模擬鼠標點擊

需要引用的dll

C#本身帶的類庫中沒有關于鼠標操作的函數庫,需要引用微軟的dll,在visual studio中使用 nuget添加 mshtml 即可(Microsoft.mshtml)

主要函數,及其方法參數釋義

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.Threading.Tasks;

    using System.Runtime.InteropServices;

    namespace workhelper

    {

        class MouseHelper

        {

            [System.Runtime.InteropServices.DllImport("user32")]

            public static extern int mouse_event(int dwFlags, int dx, int dy, int cButtons, int dwExtraInfo);

            //移動鼠標

            public const int MOUSEEVENTF_MOVE = 0x0001;

            //模擬鼠標左鍵按下

            public const int MOUSEEVENTF_LEFTDOWN = 0x0002;

            //模擬鼠標左鍵抬起

            public const int MOUSEEVENTF_LEFTUP = 0x0004;

            //模擬鼠標右鍵按下

            public const int MOUSEEVENTF_RIGHTDOWN = 0x0008;

            //模擬鼠標右鍵抬起

            public const int MOUSEEVENTF_RIGHTUP = 0x0010;

            //模擬鼠標中鍵按下

            public const int MOUSEEVENTF_MIDDLEDOWN = 0x0020;

            //模擬鼠標中鍵抬起

            public const int MOUSEEVENTF_MIDDLEUP = 0x0040;

            //標示是否采用絕對坐標

            public const int MOUSEEVENTF_ABSOLUTE = 0x8000;

            [DllImport("user32.dll")]

            public static extern bool SetCursorPos(int X, int Y);

        }

    }

SetCursorPos 函數

把光標移到屏幕的指定位置。(ps:是整個屏幕的坐標,相對于屏幕左上角的絕對位置)

參數

  • X 指定光標的新的X坐標,以屏幕坐標表示。
  • Y 指定光標的新的Y坐標,以屏幕坐標表示。 返回值
  • 如果成功,返回非0值
  • 如果失敗,返回值是0

mouse_event 函數

綜合鼠標移動和按鈕點擊。該方法包含鼠標左右移動及點擊操作。 參數

  • dwFlags 標志位集,指定點擊按鈕和鼠標動作的多種情況。此參數可以是下列值的某種組合:
VALUEMEANING
MOUSEEVENTF_ABSOLUTEdX和dY參數含有規范化的絕對坐標。如果不設置,這些參數含有相對數據:相對于上次位置的改動位置。此標志可設置,也可不設置,不管鼠標的類型或與系統相連的類似于鼠標的設備的類型如何。要得到關于相對鼠標動作的信息,參見下面備注部分
MOUSEEVENTF_MOVE鼠標移動
MOUSEEVENTF_LEFTDOWN鼠標左鍵按下
MOUSEEVENTF_LEFTUP鼠標左鍵松開
MOUSEEVENTF_RIGHTDOWN鼠標右鍵按下
MOUSEEVENTF_RIGHTUP鼠標右鍵松開
MOUSEEVENTF_MIDDLEDOWN鼠標中鍵按下
MOUSEEVENTF_MIDDLEUP鼠標中鍵松開
MOUSEEVENTF_WHEEL鼠標輪被滾動,如果鼠標有一個滾輪。滾動的數量由dwData給出
  • dx 指定鼠標沿x軸的絕對位置或者從上次鼠標事件產生以來移動的數量,依賴于MOUSEEVENTF_ABSOLUTE的設置。給出的絕對數據作為鼠標的實際X坐標;給出的相對數據作為移動的mickeys數。一個mickey表示鼠標移動的數量,表明鼠標已經移動。
  • dy 指定鼠標沿y軸的絕對位置或者從上次鼠標事件產生以來移動的數量,依賴于MOUSEEVENTF_ABSOLUTE的設置。給出的絕對數據作為鼠標的實際y坐標,給出的相對數據作為移動的mickeys數。
  • dwData 如果dwFlags為MOUSEEVENTF_WHEEL,則dwData指定鼠標輪移動的數量。正值表明鼠標輪向前轉動,即遠離用戶的方向;負值表明鼠標輪向后轉動,即朝向用戶。一個輪擊定義為WHEEL_DELTA,即120。如果dwFlagsS不是MOUSEEVENTF_WHEEL,則dWData應為零。
  • dwExtraInfo 指定與鼠標事件相關的附加32位值。應用程序調用函數GetMessageExtraInfo來獲得此附加信息

使用示例

    MouseHelper.SetCursorPos(Form1.point.X, Form1.point.Y);

    MouseHelper.mouse_event(MouseHelper.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);

    MouseHelper.mouse_event(MouseHelper.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);


該文章在 2021/1/29 16:16:57 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved