macos – 让Cocoa应用程序保持在全屏应用程序之上

macos – 让Cocoa应用程序保持在全屏应用程序之上,第1张

概述我正在开发一个具有状态菜单的应用程序,用户可以从该菜单打开应用程序的主窗口.我希望能够在全屏应用程序之上打开此窗口.如果Application is agent(UIElement)设置为YES,则以下代码可以正常工作: - (IBAction)showMainWindow:(id)sender{ [_window makeKeyAndOrderFront:self]; [NSApp 我正在开发一个具有状态菜单的应用程序,用户可以从该菜单打开应用程序的主窗口.我希望能够在全屏应用程序之上打开此窗口.如果Application is agent(UIElement)设置为YES,则以下代码可以正常工作:

- (IBAction)showMainWindow:(ID)sender{   [_window makeKeyAndOrderFront:self];   [NSApp activateIgnoringOtherApps:YES];}

但是,我想在码头上也有一个图标.如果Application is agent(UIElement)设置为NO showMainWindow会导致应用程序跳转到不同的空间而不是显示在活动的全屏应用程序之上.这个问题有方法解决吗?

解决方法 为了完整起见,我在这里回答我自己的问题.

经过一番研究后,没有办法绕过它.它就像OS X的工作方式一样.

我的解决方案:我在应用程序首选项中为用户提供了一个选项,即他们是希望应用程序是停靠类型应用程序还是代理类型.在主p@R_502_6818@中将Application is agent(UIElement)设置为YES.您可以通过将应用程序激活策略设置为NSApplicationActivationPolicyRegular来在运行时更改应用程序类型.

总结

以上是内存溢出为你收集整理的macos – 让Cocoa应用程序保持在全屏应用程序之上全部内容,希望文章能够帮你解决macos – 让Cocoa应用程序保持在全屏应用程序之上所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1001028.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存