by wakaba » 2012年5月08日(火) 21:35
IE上で 左クリックした時のマウス座標を 取得したくて 色々調べましたが
イマイチ解りません。 ご教授願います
1.ABで作成したソフトを起動後 IEを起動します(手動でOK)
2.ABソフトで 座標取得状態にします
3.IE上のある点を 左(右)クリックします
4.AB作成ソフトで マウス座標を 得る
詳しい人のHPにて 下記のコードを 見つけて一部
変更しています
動作は しますが ABの画面上しか 取得不可です
よろしく お願いします
-------------------------
#N88BASIC
Dim pos As POINTAPI
Dim lpPrevWndProc As VoidPtr
Function MouseProc(hWnd As HWND,dwMsg As DWord,wParam As WPARAM,lParam As LPARAM) As LRESULT
Select Case dwMsg
Case WM_MOUSEMOVE
Case WM_LBUTTONDOWN
GetCursorPos(pos)
MsgBox 0,Str$(pos.x),"マウス座標"
Case WM_RBUTTONDOWN
Case WM_LBUTTONUP
Case WM_RBUTTONUP
Case Else
MouseProc=CallWindowProc(lpPrevWndProc,hWnd,dwMsg,wParam,lParam)
End Select
End Function
lpPrevWndProc=SetWindowLong(_PromptSys_hWnd,GWL_WNDPROC,AddressOf(MouseProc))
'メインのコードここから
Sleep(5000)
'メインのコードここまで
SetWindowLong(_PromptSys_hWnd,GWL_WNDPROC,lpPrevWndProc)
-----------------------
IE上で 左クリックした時のマウス座標を 取得したくて 色々調べましたが
イマイチ解りません。 ご教授願います
1.ABで作成したソフトを起動後 IEを起動します(手動でOK)
2.ABソフトで 座標取得状態にします
3.IE上のある点を 左(右)クリックします
4.AB作成ソフトで マウス座標を 得る
詳しい人のHPにて 下記のコードを 見つけて一部
変更しています
動作は しますが ABの画面上しか 取得不可です
よろしく お願いします
-------------------------
#N88BASIC
Dim pos As POINTAPI
Dim lpPrevWndProc As VoidPtr
Function MouseProc(hWnd As HWND,dwMsg As DWord,wParam As WPARAM,lParam As LPARAM) As LRESULT
Select Case dwMsg
Case WM_MOUSEMOVE
Case WM_LBUTTONDOWN
GetCursorPos(pos)
MsgBox 0,Str$(pos.x),"マウス座標"
Case WM_RBUTTONDOWN
Case WM_LBUTTONUP
Case WM_RBUTTONUP
Case Else
MouseProc=CallWindowProc(lpPrevWndProc,hWnd,dwMsg,wParam,lParam)
End Select
End Function
lpPrevWndProc=SetWindowLong(_PromptSys_hWnd,GWL_WNDPROC,AddressOf(MouseProc))
'メインのコードここから
Sleep(5000)
'メインのコードここまで
SetWindowLong(_PromptSys_hWnd,GWL_WNDPROC,lpPrevWndProc)
-----------------------