如何在按住鼠标 1 时在 Windows 鼠标钩中重复我的代码
How can I repeat my Code in Windows Mousehook while mouse1 is held down
我需要在按住鼠标左键的同时在鼠标钩中重复我的函数。但是使用我当前的代码,它只被调用一次。我假设当我按住鼠标左键时,代码会被一遍又一遍地调用,我不确定这是否真的适用于我想尝试的。我需要代码在钩子中运行以用于计时目的。
LRESULT __stdcall hk_mouse( int nCode, WPARAM wParam, LPARAM lParam )
{
if (nCode >= 0)
{
switch (wParam) {
case WM_LBUTTONDOWN:
{
Beep( 1000, 100 );
break;
}
case WM_LBUTTONUP:
{
break;
}
default:
{
break;
}
}
}
return CallNextHookEx( mouse_hook, nCode, wParam, lParam );
}
鼠标按钮消息不会在 Windows 中重复。
收到WM_LBUTTONDOWN
时,应创建一个具有所需重复延迟的计时器,然后在钩子进程中处理WM_TIMER
消息,并查找创建计时器时指定的计时器 ID。
当鼠标按钮被释放并且您收到WM_LBUTTONUP
您应该删除计时器。
您应该注意,为响应WM_TIMER
消息而执行的任何代码也应在 WM_LBUTTONDOWN
事件中执行(除非您希望在首次按下按钮时出现延迟(,因此最好将该代码放在一个函数中,然后可以从两个位置调用该函数。
相关文章:
- C++我的数学有什么问题,为什么我的代码不能正确循环
- 代码在main()中运行,但在函数中出现错误
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- 编译包含字符串的代码时遇到问题
- 我在c++代码中生成了一个运行时#3异常
- 如何在linux终端中同时编译和运行c++代码
- 为cl.exe(Visual Studio代码)指定命令行C++版本
- 在Linux for Windows上编译C++代码时出错
- 将鼠标悬停在问题上时与预期">"相关的代码错误
- 如何在按住鼠标 1 时在 Windows 鼠标钩中重复我的代码
- 如何从用户代码中移动鼠标光标
- 在C++窗口代码中有没有任何方法可以阻止鼠标移动到窗口边界之外
- 无法从 C/C++ 代码中单击鼠标
- 用于锁定键盘和鼠标的代码
- 鼠标移动加速代码执行
- c++鼠标点击模拟代码
- 过度使用内存的c++ OpenCV鼠标点代码
- 在鼠标钩子代码中调用方法会导致访问冲突
- 如何在visual studio中切换输出TAB和代码编写区域而不触摸鼠标
- 鼠标移动增加代码执行速度VB与C DLL