必要に応じてプログラムでドックアイコンを非表示にすることは可能ですか?plistでプロパティ「Applicationisagent(UIElement)」を定義する方法の1つを知っています。これにより、cocoaアプリをユーザーエージェントとして作成します。ただし、これにより、ドックアイコンが完全に非表示になります。
ドックアイコンの表示を制御できる方法を探しています。何か案が ?
必要に応じてプログラムでドックアイコンを非表示にすることは可能ですか?plistでプロパティ「Applicationisagent(UIElement)」を定義する方法の1つを知っています。これにより、cocoaアプリをユーザーエージェントとして作成します。ただし、これにより、ドックアイコンが完全に非表示になります。
ドックアイコンの表示を制御できる方法を探しています。何か案が ?
残念ながら違います。この機能を使用して、バックグラウンド専用アプリをフォアグラウンドアプリに変換することはできTransformProcessType()
ますが、フォアグラウンドアプリからバックグラウンドアプリに変換することはできません。
バックグラウンドからフォアグラウンドに移動する方法は次のとおりです。
ProcessSerialNumber psn = { 0, kCurrentProcess };
OSStatus returnCode = TransformProcessType(&psn, kProcessTransformToForegroundApplication);
if( returnCode != 0) {
NSLog(@"Could not bring the application to front. Error %d", returnCode);
}
可能です。ただし、メニューも非表示になります。
NSApplication.shared.setActivationPolicy(.accessory)
DispatchQueue.main.async {
NSApplication.shared.activate(ignoringOtherApps: true)
NSApplication.shared.windows.first!.makeKeyAndOrderFront(self)
}
帰ってきた:
NSApplication.shared.setActivationPolicy(.regular)