MFC模擬滑鼠點選

2022-08-02 06:54:08 字數 2213 閱讀 6220

mfc 工程

把以下**放到你想要響應的函式裡面就行

cpoint pt; 

getcursorpos(&pt);//獲取滑鼠在螢幕的當前位置

setcursorpos(100,200);//移動到某點座標

mouse_event(mouseeventf_rightdown,0,0,0,0);//點下右鍵

mouse_event(mouseeventf_rightup,0,0,0,0);//鬆開右鍵

mouse_event(mouseeventf_leftdown,0,0,0,0);//點下左鍵

mouse_event(mouseeventf_leftup,0,0,0,0);//鬆開左鍵

bool   setcursorpos( 

int   x,   //   horizontal   position 

int   y   //   vertical   position 

); 設定滑鼠位置。滑鼠指標在螢幕畫素座標系統中的x,y位置 

這個函式是用來設定mouse位置的。可以用這個函式來移動mouse在螢幕上的移動。

另外乙個函式功能比較強,即mouse_event()

void   mouse_event(

dword   dwflags,   

dword   dx,   

dword   dy,   

dword   dwdata,   

dword   dwextrainfo 

);   

設定mouse狀態。引數說明如下:

dwflags   long,下述標誌的乙個組合   : 

mouseeventf_absolute   dx和dy指定滑鼠座標系統中的乙個絕對位置。在滑鼠座標系統中,螢幕在水平和垂直方向上均勻分割成65535×65535個單元   

mouseeventf_move   移動滑鼠   

mouseeventf_leftdown   模擬滑鼠左鍵按下   

mouseeventf_leftup   模擬滑鼠左鍵抬起   

mouseeventf_rightdown   模擬滑鼠右鍵按下   

mouseeventf_rightup   模擬滑鼠右鍵按下   

mouseeventf_middledown   模擬滑鼠中鍵按下   

mouseeventf_middleup   模擬滑鼠中鍵按下   

dx   根據是否指定了mouseeventf_absolute標誌,指定水平方向的絕對位置或相對運動   

dy   根據是否指定了mouseeventf_absolute標誌,指定垂直方向的絕對位置或相對運動   

dwdata amount   of   wheel   movement 

dwextrainfo,通常未用的乙個值。用getmessageextrainfo函式可取得這個值。可用的值取決於特定的驅動程式。 

例如:將mouse移動到座標(450,100)   可用函式:

setcursorpos(450,100)   ;   或

mouse_event(mouseeventf_move   ,0,450,100,getmessageextrainfo());   來實現 

實現滑鼠單擊:

mouse_event(mouseeventf_leftdown,0,0,0,getmessageextrainfo()); 

mouse_event(mouseeventf_leftup,0,0,0,getmessageextrainfo   ()); 

那麼,如何模擬mouse不斷的移動和點選呢?這需要用定時器完成。

以c為例:

在初始化程式的時候,設定時鐘:

... 

case   wm_create: 

... 

settimer(1,   1000,   null); 

break; 

這樣就設定了id號為1   的時鐘事件,   它每秒(1000毫秒)將產生乙個   wm_timer事件。

然後我們在wm_timer事件中將入相關的處理: 

case   wm_timer:

在delphi中,時鐘是通過乙個timer控制項實現的。

關於時鐘事件的運用在此軟體中是很基本的乙個概念。幾乎所有的工作都是在時鐘事件中完成的。如需進一步的了解時鐘的用法,請查閱相關資料。 

vk_oem_clear fe clear 鍵

**:

MFC模擬滑鼠點選

mfc 工程 把以下 放到你想要響應的函式裡面就行 cpoint pt getcursorpos pt 獲取滑鼠在螢幕的當前位置 setcursorpos 100,200 移動到某點座標 mouse event mouseeventf rightdown,0,0,0,0 點下右鍵 mouse eve...

模擬滑鼠點選事件

今天上12306購票,可被氣得不輕,首先登陸人數受到了限制,其次買到票還有個排隊等待神馬的,先不說裡頭有沒有貓膩,電腦直接操作的,需要等待30分鐘以上嗎?神馬查詢語言要執行30分鐘才能得到個結果出來?贊同網上的言論 相比較而言,之前的搶票更能接受一些 上面是tackbar,用於隨時調整點選的時間間隔...

VB 模擬滑鼠點選 Mouse Event

private declare submouse event lib user32 byval dwflags aslong byval dx as long byval dy as long byval cbuttons aslong byval dwextrainfo aslong const ...