happytc 发表于 2011-2-16 11:52:27

[已解决]用ModernMenuRaw.au3建的托盘,怎么用热键呼出/隐藏?

本帖最后由 happytc 于 2011-2-18 09:45 编辑

找了半天,也没有找到。
用ModernMenuRaw.au3建的托盘,怎么用热键呼出/隐藏托盘图标?
au3默认的倒可以用Opt("TrayIconHide", 1)/Opt("TrayIconHide", 0)设个热键来隐藏/呼出

happytc 发表于 2011-2-16 12:52:13

里说有:
ModernMenu possible commands:
----------------------------
*** Common parameters ***
bUseAdvMenu - switch on/off GUI advanced menu
bUseAdvTrayMenu - switch on/off Tray advanced menu
看au3文件里是设成:Global $bUseAdvTrayMenu = True,怎么用呀???

gzh888666 发表于 2011-2-17 00:53:37

TraySetOnEvent

happytc 发表于 2011-2-17 20:47:05

回复 3# gzh888666

这个,是au3默认建的托盘才可以吧,用ModernMenu建的托盘好象不行的

happytc 发表于 2011-2-18 09:43:39

本帖最后由 happytc 于 2011-2-18 09:47 编辑

看了,这个玩意ModerMenu默认不提供这个功能,就只好用下面的“暴力”方法了

#Include <GuiToolBar.au3>

PseuTrayMenu()
Func PseuTrayMenu()
        Local $hTray = WinGetHandle("")
        Local $hToolbar = ControlGetHandle($hTray, "", "")
        Local $iCnt = _GUICtrlToolbar_ButtonCount($hToolbar)
        Local $iCmdTrue = -1
        Local $sText, $iCmd
        For $n = 0 To $iCnt - 1
                $iCmd = _GUICtrlToolbar_IndexToCommand($hToolbar, $n)
                $sText = _GUICtrlToolbar_GetButtonText($hToolbar, $iCmd)
                If StringInStr($sText, "MyProgram") Then
                        $iCmdTrue = $iCmd
                        ExitLoop
                EndIf
        Next
        _GUICtrlToolbar_SetButtonState($hToolbar, $iCmdTrue, $TBSTATE_HIDDEN)
        Sleep(5000)
        _GUICtrlToolbar_SetButtonState($hToolbar, $iCmdTrue, $TBSTATE_ENABLED)       
EndFunc

ljf840212 发表于 2014-8-23 13:53:57

谢谢分享~{:face (254):}{:face (254):}
页: [1]
查看完整版本: [已解决]用ModernMenuRaw.au3建的托盘,怎么用热键呼出/隐藏?