gpt4 book ai didi

objective-c - Cocoa - 如何将特定窗口从 StatusMenu 置于前台

转载 作者:行者123 更新时间:2023-12-03 17:11:10 24 4
gpt4 key购买 nike

我正在开发 Mac 应用程序。我在 plist 中设置了 Application is agent (UIElement) = YES,并且 App 有一个窗口(比如说弹出窗口),充当 StatusMenu 的自定义 PopOver。还有一个窗口(假设是窗口 B),应该在从我制作的 StatusMenu 中选择链接时打开,但我面临的问题如下:

  • 在应用程序启动时,当我打开状态菜单时,它还显示窗口 B,但实际上不应显示该窗口。窗口 B 在应用程序委托(delegate)中分配并初始化。

  • 另一个问题是当通过从 StatusMenu 中选择窗口 B 使其可见时。看起来不错,现在我切换到另一个应用程序,因此它的窗口被发送到背景,这很好,但是每当我单击状态菜单时,它就会自动出现在前面。理想情况下它应该只打开弹出窗口。

最佳答案

  • 窗口 B 正在打开,因为您可能忘记在界面生成器的属性检查器中取消选中“启动时可见”窗口属性

enter image description here

  • 您可以通过在调用窗口之前将 activateIgnoringOtherApps 设置为 YES 来解决第二个问题

    [[NSApplication sharedApplication] activateIgnoringOtherApps:YES];

    [windowB showWindow:nil];

关于objective-c - Cocoa - 如何将特定窗口从 StatusMenu 置于前台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27287691/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com