Board logo

標題: 如何監控滑鼠點擊某個位置 [打印本頁]

作者: cdkee    時間: 2010-11-7 00:31     標題: 如何監控滑鼠點擊某個位置

本帖最後由 cdkee 於 2010-11-7 01:01 編輯

請教大大,用VBA監控滑鼠點擊畫面上的正中位置座標,應該怎樣寫,謝謝!
作者: Min    時間: 2010-11-7 01:27

要用到API喔~

Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Type POINTAPI
    X As Long
    Y As Long
End Type
Public Function GethWnd() As Long
    Dim lpPoint As POINTAPI
    GetCursorPos lpPoint
    GethWnd = WindowFromPoint(lpPoint.X, lpPoint.Y)
    MsgBox lpPoint.X
    MsgBox lpPoint.Y
End Function
作者: cdkee    時間: 2010-11-7 02:12

回復 2# Min


    謝謝版大!是小輩說不清楚,是控制滑鼠點撃畫面正中位置。
作者: Min    時間: 2010-11-7 09:58

一個簡單的"移動滑鼠點撃" API卻是好幾個動作
要活用API 先要了解有哪一些API可以用~ (小弟不才 會用的也只有這幾個>"<)
我們拆兩個部分來談 1.滑鼠移動 2.滑鼠設定

1.滑鼠移動 XY就是您的座標 至於如何移動到"畫面正中央位置" 就自己算了~
Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long
Sub MoveMouse()
    Dim X As Integer
    Dim Y As Integer
    X = 500
    Y = 150
    Call SetCursorPos(X, Y)
End Sub

2.滑鼠設定
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Sub SetMouse()
    Call mouse_event(&H2 Or &H4, 0, 0, 0, 0)
End Sub
&H2 就是左鍵按下
&H4 就是左鍵放開
作者: cdkee    時間: 2010-11-7 19:12

回復 4# Min


    謝謝版大教授!可以了!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)