鼠标结束时如何隐藏GUI?

问题描述 投票:0回答:1

我创建了一个简单的叠加GUI:

Gui +LastFound +AlwaysOnTop +ToolWindow -Caption

有时它后面有按钮,我希望当鼠标结束时GUI隐藏,以便我可以看到并点击它后面的按钮。当鼠标不再显示时,GUI再次显示。

我真的不能谷歌出一个简单的解决方案。你有什么主意吗?

user-interface autohotkey show-hide mouseover
1个回答
1
投票

我建议使用鼠标钩来调整Lexikos的功能,以监控鼠标是否悬停在GUI所在的位置。可能有更有效的解决方案(我也希望看到),但这肯定会奏效。

https://autohotkey.com/board/topic/27067-mouse-move-detection/

以下是链接断开时的示例代码段:

#Persistent
MouseHook := DllCall("SetWindowsHookEx", "int", 14  ; WH_MOUSE_LL = 14
    , "uint", RegisterCallback("MouseProc"), "uint", 0, "uint", 0)
return

MouseProc(nCode, wParam, lParam)
{
    global MouseHook
    Critical
    if wParam = 0x200 ; WM_MOUSEMOVE
    {
        ToolTip % NumGet(lParam+0,0,"int") ", " NumGet(lParam+4,0,"int")
    }
    return DllCall("CallNextHookEx", "uint", MouseHook
                    , "int", nCode, "uint", wParam, "uint", lParam)
}
© www.soinside.com 2019 - 2024. All rights reserved.