从图标托盘更改图片

从图标托盘更改图片

我搜索了很多关于此问题的帖子,但我无法理解它们......

是否可以将H图标更改为其他内容以及S(暂停),如果暂停,则会切换到另一个图像。

答案1

当脚本的热键被暂停时,其托盘图标会变为字母 S。可以通过冻结图标来避免这种情况,方法是将 Menu 命令的最后一个参数指定为 1。例如:

菜单,托盘,图标,C:\My Icon.ico,,1

https://autohotkey.com/docs/commands/Suspend.htm#Remarks

要在暂停脚本时更改托盘图标,您需要定义一个热键,例如

!s::
Menu,Tray,Icon, C:\My Icon2.ico, , 1
Suspend On
return

#If (A_IsSuspended)

    !s::
    Suspend Off
    Menu,Tray,Icon, C:\My Icon.ico, , 1
    return

#If

或者一个计时器:

#Persistent
SetTimer, change_tray_icon, 100
return

    change_tray_icon:
If (A_IsSuspended)
    Menu,Tray,Icon, C:\My Icon2.ico, , 1
else
    Menu,Tray,Icon, C:\My Icon.ico, , 1
return

答案2

您需要使用菜单命令。暂停程序时,通过使用不同的图标再次调用相同命令来更改图标。取消暂停时,再次调用该命令以显示常规图标。

; active
Menu, Tray, Icon, yourregularicon.ico ; to replace H
; suspend
Menu, Tray, Icon, yoursuspendicon.ico ; to replace H

文档:https://autohotkey.com/docs/commands/Menu.htm

相关内容