我创建了一个简单的覆盖GUI:
Gui +LastFound +AlwaysOnTop +ToolWindow -Caption
有时它后面有按钮,我希望在鼠标悬停时隐藏GUI,以便我可以看到并单击它后面的按钮。当鼠标不再停留时,GUI再次显示。
我真的无法为此找到一个简单的解决方案。你有什么主意吗?
答案 0 :(得分:1)
我建议修改Lexikos用鼠标钩所做的操作,以监视鼠标是否悬停在GUI所在的位置。也许会有更有效的解决方案(我也希望看到),但这肯定会起作用。
下面是示例代码片段,以防链接损坏:
#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)
}