我目前正試圖在當前打開的窗口上模擬鼠標滾動事件。我正在Visual C++中使用setscrollpos()函數來實現它。如何模擬當前窗口的鼠標滾動打開?
SetScrollPos(hwnd,SB_VERT,0,TRUE);
UpdateWindow(hwnd);
如何將打開的當前窗口的名稱傳遞給參數hwnd?
我目前正試圖在當前打開的窗口上模擬鼠標滾動事件。我正在Visual C++中使用setscrollpos()函數來實現它。如何模擬當前窗口的鼠標滾動打開?
SetScrollPos(hwnd,SB_VERT,0,TRUE);
UpdateWindow(hwnd);
如何將打開的當前窗口的名稱傳遞給參數hwnd?
在一百萬年前,我爲我製作了一個可以播放WinMine(Windows'MineSweeper)的程序。
這涉及
遊戲可以在1秒內完成100%的時間 - 高分的剩餘時間部分始終與解決問題的總時間相同。對於踢球,我還添加了將比賽場設置爲1比特圖像的代碼 - 即每個單元格都是安全的。
無論如何,下面的代碼適用於我:它只是滾動這個後輸入框4行。
如果在調試模式下運行,或者在可見控制檯窗口中運行 - 由於它是前臺窗口,事件將被吞下。我已經運行這個代碼沒有窗口。編輯代碼,然後敲擊構建,然後在構建代碼時切換回此窗口,導致滾動此輸入框。
#include <windows.h>
#include <winuser.h>
const int minWheelMovement = 120;
int WINAPI WinMain (HINSTANCE hThisInstance,
HINSTANCE hPrevInstance,
LPSTR lpszArgument,
int nCmdShow)
{
HWND foregroundWindow;
foregroundWindow = GetForegroundWindow();
mouse_event(MOUSEEVENTF_WHEEL, 0,0,4*minWheelMovement, 0);
}
您是否試圖將此消息發送給其他應用程序?如果是這樣,你的問題會更好地被認爲是「如何獲得特定窗口的hwnd?」你可以使用SendInput,當你有這個hwnd來正確模擬用戶輸入設備的活動(鼠標,鍵盤等) – enhzflep
「當前窗口打開」是什麼意思? –
當我使用「當前窗口」階段時,我指的是筆記本電腦用戶打開的任何窗口。鼠標滾動通過網絡攝像頭使用特定的眼睛手勢進行控制。我不知道如何獲取打開的窗口的名稱傳遞給參數HWND ?? – Sade