发布
社区首页 >问答首页 >如何使用user32.dll捕获鼠标离开事件

如何使用user32.dll捕获鼠标离开事件
EN

Stack Overflow用户
提问于 2019-04-11 05:03:21
回答 2查看 300关注 0票数 2

我使用user32.dll来获取光标位置和模拟鼠标点击等。我正在使用WPF app.But中的MouseLeave事件,我想从所有窗口(不仅仅是我的WPF应用程序)捕获鼠标离开(或鼠标悬停)事件。是否有可能使用user32.dll或其他方法来捕获此事件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-12 11:49:06

我是这样做的

代码语言:javascript
代码运行次数:0
复制
[DllImport("user32.dll")]
    static extern bool GetCursorPos(out Point lpPoint);

    void StartGettingCursorPos()
    {
        Task.Run(new Action(() =>
        {
            while (true)
            {
                GetCursorPos(out Point point);
                Console.WriteLine($"X:{point.X}; Y:{point.Y}");
                Thread.Sleep(20);
            }
        }));
    }
票数 1
EN

Stack Overflow用户

发布于 2019-04-11 05:35:37

有一个Windows API调用,它允许获取鼠标事件,即使它们不在窗口中:

SetCapture(hWnd)

您可以将其与以下调用结合使用:

WindowFromPoint()

获取鼠标停留在哪个窗口上

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55621288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档