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

相關文章
相關標籤/搜索