0

我在带有自定义托盘图标的脚本中有一些热键。

Menu Tray, Icon, my_hotkeys.ico

其中一个显示带有确定按钮和问号图标的消息框。

MsgBox, 32, My Hotkeys, Hey, here's some info...

但是,它在 Windows 任务栏中具有默认的绿色 H AutoHotkey 图像。我浏览了所有的菜单选项。并且 GUI 命令声称它使用菜单图标(如果已设置)。但我找不到任何特定于 MsgBox 的内容。有什么方法可以将 MsgBox 图标更改为我在系统托盘中使用的相同自定义图标?

4

1 回答 1

4

有几种可能的解决方案:

  • +OwnDialogs在调用 MsgBox 之前创建并显示一个 Gui 。
  • 使用 Gui 命令编写您自己的类似 MsgBox 的代码。
  • 使用自定义图标编译您的脚本(转换为 exe)。
  • 替换 AutoHotkey.exe 中的图标资源(影响所有脚本)。
  • 在显示 MsgBox 之前设置一个计时器,然后在它出现后发送 WM_SETICON。
  • 在显示窗口之前挂钩创建 MsgBox 窗口以设置图标 - C++ 中的示例

+OwnDialogs 示例:

Menu Tray, Icon, shell32.dll, 5  ; Folder icon
Gui +OwnDialogs
Gui Show           ; Since it has zero dimensions, it should be invisible.
MsgBox Testing...
ExitApp
于 2012-11-04T01:12:36.590 回答