我目前在使用AppleScript编写的状态栏应用程序时遇到问题。该应用程序包含一个状态栏,其中一些菜单项在计算机开启时一直运行。它允许用户检查各种状态并执行一些系统任务,例如更改某些系统设置首选项或启动某些应用程序。
考虑到这一点,我决定在运行时移除app dock图标,只显示状态栏图标,因此我修改了.plist:(defaults write /Applications/name_of_myapp.app/Contents/Info.plist LSUIElement -bool yes
)
一切仍然有效但只有一件事:对于某些菜单项,单击会触发一个对话框来请求确认操作,一旦我修改了plist,对话框就不再出现了。
set valueRtn to display dialog "Are you sure you want to activate APPXXX?" with icon myIcon buttons {"Don't Continue", "Continue"} default button "Continue" cancel button "Don't Continue"
set buttonRtn to button returned of valueRtn
if buttonRtn is "Continue" then tell application "APPXXX" to activate
任何人都知道为什么上面的代码行不再执行?我应该补充一点,任何其他命令都可以工作但对话框。
提前感谢您的任何意见!
答案 0 :(得分:0)
试试这个:
首次保存应用程序后,右键单击该图标,然后选择"显示包内容"。打开文件夹Contents
,然后使用文本编辑器打开info.plist
。插入这两行
<key>LSUIElement</key>
<true/>
info.plist
中的位置并不重要,但必须在<key>
行之前插入两行
在文本编辑器中保存info.plist
。在脚本编辑器中保存项目。
请注意,使用Save as...