低级鼠标钩-鼠标按钮单击与保持

Judocus

我正在使用C ++和DirectD3D9绘制菜单。我希望用鼠标浏览菜单。我可以得到鼠标的位置,但是,检查是否单击了左按钮被证明是棘手的。我能够检查它是否被按下,但是没有被点击。

bool LBUTTONDOWN = false;
LRESULT CALLBACK LowLevelMouseProc(int nCode, WPARAM wParam, LPARAM lParam) {
    if (nCode == HC_ACTION && (wParam == WM_LBUTTONUP || wParam == WM_LBUTTONDOWN)) {
        LBUTTONDOWN = wParam == WM_LBUTTONDOWN;
    }
    return CallNextHookEx(0, nCode, wParam, lParam);
}

如何添加检查以查看是否单击了左按钮?

法哈德·雷扎(Farhad Reza)

您需要使用定时技巧。创建一个名为“ nTime”的变量,并在LButton启动时将其设置为零。当LButton按下时,使用'+ ='运算符增加变量值,并对照类似这样的值检查变量-

bool LBUTTONDOWN = false;
int nTime = 0;
LRESULT CALLBACK LowLevelMouseProc(int nCode, WPARAM wParam, LPARAM lParam) 
{
    if (nCode == HC_ACTION && (wParam == WM_LBUTTONUP || wParam == WM_LBUTTONDOWN)) 
    {
        LBUTTONDOWN = wParam == WM_LBUTTONDOWN;

        if ( LBUTTONDOWN )
        {
            nTime += 1;
            if ( nTime > 1000 /*( this value depends on you )*/ )
            {
                nTime = 0;
                // Here is your hold event code.
            }
        }
        else
            nTime = 0;
    }
    return CallNextHookEx(0, nCode, wParam, lParam);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Qt keyPressEvent,“保持”和keyReleaseEvent处理按钮/鼠标单击

来自分类Dev

Qt keyPressEvent,“保持”和keyReleaseEvent处理按钮/鼠标单击

来自分类Dev

低级鼠标挂钩-鼠标在断点处冻结

来自分类Dev

使<img>元素出现在鼠标悬停时并保持单击,该元素与被单击的按钮的相同ID相对应

来自分类Dev

模拟JavaScript中的鼠标单击按钮

来自分类Dev

鼠标单击位置周围出现的按钮

来自分类Dev

单击按钮时获取鼠标坐标

来自分类Dev

当鼠标悬停在具有绝对位置的按钮上时滚动内容(按钮应保持可单击状态)

来自分类Dev

如何使我的鼠标钩从单独的线程回调?C ++

来自分类Dev

高DPI缩放比例,鼠标钩和WindowFromPoint

来自分类Dev

鼠标单击后,JMenu仍保持选中状态

来自分类常见问题

如何检测pygame中嵌套按钮内的鼠标单击

来自分类Dev

如何找到鼠标按钮的“单击”位置x和y?

来自分类Dev

单击鼠标按钮后动画不正确

来自分类Dev

如何通过鼠标移动来执行单击按钮的功能?

来自分类Dev

是否可以在单击鼠标按钮时在 Pygame 中放置图像?

来自分类Dev

如何通过低级鼠标回调方法从lParam获取鼠标光标坐标?

来自分类Dev

将鼠标按钮8(“浏览器前进”)重新映射到RHEL上的鼠标按钮2(“中键单击”)

来自分类Dev

单击鼠标折叠行

来自分类Dev

鼠标单击触发

来自分类Dev

鼠标事件单击问题

来自分类Dev

单击鼠标翻转卡片

来自分类Dev

鼠标不会单击并拖动

来自分类Dev

单击鼠标选择块

来自分类Dev

如何检测鼠标左键单击,而不是在UI按钮组件上单击时检测

来自分类Dev

自定义按钮在一次鼠标单击中运行 2 次单击事件

来自分类Dev

在4个按钮之间移动,并在两个按钮之间单击鼠标悬停

来自分类Dev

禁用按钮捕获鼠标

来自分类Dev

如何在后台线程上正确设置全局鼠标钩?

Related 相关文章

  1. 1

    Qt keyPressEvent,“保持”和keyReleaseEvent处理按钮/鼠标单击

  2. 2

    Qt keyPressEvent,“保持”和keyReleaseEvent处理按钮/鼠标单击

  3. 3

    低级鼠标挂钩-鼠标在断点处冻结

  4. 4

    使<img>元素出现在鼠标悬停时并保持单击,该元素与被单击的按钮的相同ID相对应

  5. 5

    模拟JavaScript中的鼠标单击按钮

  6. 6

    鼠标单击位置周围出现的按钮

  7. 7

    单击按钮时获取鼠标坐标

  8. 8

    当鼠标悬停在具有绝对位置的按钮上时滚动内容(按钮应保持可单击状态)

  9. 9

    如何使我的鼠标钩从单独的线程回调?C ++

  10. 10

    高DPI缩放比例,鼠标钩和WindowFromPoint

  11. 11

    鼠标单击后,JMenu仍保持选中状态

  12. 12

    如何检测pygame中嵌套按钮内的鼠标单击

  13. 13

    如何找到鼠标按钮的“单击”位置x和y?

  14. 14

    单击鼠标按钮后动画不正确

  15. 15

    如何通过鼠标移动来执行单击按钮的功能?

  16. 16

    是否可以在单击鼠标按钮时在 Pygame 中放置图像?

  17. 17

    如何通过低级鼠标回调方法从lParam获取鼠标光标坐标?

  18. 18

    将鼠标按钮8(“浏览器前进”)重新映射到RHEL上的鼠标按钮2(“中键单击”)

  19. 19

    单击鼠标折叠行

  20. 20

    鼠标单击触发

  21. 21

    鼠标事件单击问题

  22. 22

    单击鼠标翻转卡片

  23. 23

    鼠标不会单击并拖动

  24. 24

    单击鼠标选择块

  25. 25

    如何检测鼠标左键单击,而不是在UI按钮组件上单击时检测

  26. 26

    自定义按钮在一次鼠标单击中运行 2 次单击事件

  27. 27

    在4个按钮之间移动,并在两个按钮之间单击鼠标悬停

  28. 28

    禁用按钮捕获鼠标

  29. 29

    如何在后台线程上正确设置全局鼠标钩?

热门标签

归档