gpt4 book ai didi

objective-c - 如果没有其他窗口打开,则重新打开窗口。麦可、 cocoa

转载 作者:行者123 更新时间:2023-12-03 16:40:42 27 4
gpt4 key购买 nike

您好,我正在开发一个使用 2 个窗口的程序。通过主窗口,您可以打开第二个窗口。

如果我在程序运行时单击可运行文件,第一个窗口将在第二个窗口上打开。那是不想要的。如果第二个窗口未打开或最小化,我如何才能专门打开第一个窗口,否则我宁愿激活第二个窗口而不重新打开第一个窗口。

我希望你能帮助我,因为我在互联网上找不到任何有用的东西。我是 OSX 编程新手,但我对其他语言的了解还不错。

最佳答案

您需要实现NSApplicationDelegate方法applicationShouldHandleReopen:hasVisibleWindows:

我只在应用程序关闭所有窗口并需要重新打开一个窗口时使用此功能,但我相信这对您有用:

- (BOOL) applicationShouldHandleReopen:(NSApplication *)sender hasVisibleWindows:(BOOL)flag
{
return !flag;
}

这告诉 NSApp 在没有可见窗口的情况下以默认方式重新打开 (YES),并“不执行任何操作”(NO) >) 如果有可见的窗口。

不过,看起来奇怪的是,这应该是默认行为,除非您的第二个窗口是 NSPanel。那么也许这就是您问题的根源?让我知道这是否有效...很乐意更新反馈。

关于objective-c - 如果没有其他窗口打开,则重新打开窗口。麦可、 cocoa ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31518921/

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