我正在尝试在打开的当前窗口上模拟鼠标滚动事件。我正在使用visual C ++中的setscrollpos()函数实现它。
SetScrollPos(hwnd,SB_VERT,0,TRUE);
UpdateWindow(hwnd);
如何将当前窗口的名称传递给参数hwnd?
答案 0 :(得分:1)
一百万年前,我制作了一个程序,可以为我播放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);
}