MacOSX 中如何动态隐藏Dock Icon

  XCode建立了一个GUI工程,程序分几种运行模式,一种是agent模式,还有一种是GUI界面。Agent模式是没有界面的GUI程序,经过LaunchAgents启动。建立出来的Info.plist默认有DockIcon,经过改plist无法知足需求。经过代码来控制也是比较简单,可是有几点注意事项:spa

1. 在设置隐藏Dock图标的时候须要重启应用程序,没法在运行时动态完成的,而在显示Dock图标的时候则不须要。code

2. 修改默认隐藏DockIcon,根据配置来动态显示DockIcon。orm

 

显示DockIcon代码:blog

if( [[NSUserDefaults standardUserDefaults] boolForKey:@"ShowDockIcon"] == NSOffState ) {
        [[NSUserDefaults standardUserDefaults] setBool: YES forKey: @"ShowDockIcon"];
        ProcessSerialNumber psn = { 0, kCurrentProcess };
        TransformProcessType(&psn, kProcessTransformToForegroundApplication );
 }

 

在此记录!io

相关文章
相关标签/搜索