Page 1 of 1

菜单显示为什么会直接暂停脚本所有其他操作?  Topic is solved

Posted: 28 May 2018, 03:41
by Zz_
发现AHK显示一个菜单会暂停所有代码操作?!
不论是Send发热键还是改透明度,连SetTimer都中断了!
关掉菜单后热键和定时器才继续执行。

除非新建另一脚本,对这个菜单进行设置透明度,不然就实现不了改菜单的透明度了……

Code: Select all

SetTimer,MenuHandler,200

F1::
Menu, MyMenu, add, Item1, MenuHandler  ; 创建新菜单项.
Menu, MyMenu, add, Item2, MenuHandler  ; 创建新菜单项.
Menu, MyMenu, Show
SendInput,{Down}
IfWinExist, ahk_class #32768
    WinSet, Transparent, 150  ; 使用前一行找到的窗口.
return

MenuHandler:
ToolTip,%A_Now%
return

Re: 菜单显示为什么会直接暂停脚本所有其他操作?

Posted: 28 May 2018, 06:50
by tmplinshi
是的,估计没法解决。只能用变通的方法。菜单本身也是一个窗口,所以可以自己用窗口创建一个类似的,当然有子菜单就麻烦些了。或者用另一个脚本来显示菜单,脚本间的通讯可以用 ObjRegisterActive。