gpt4 book ai didi

objective-c - 从 ViewController Cocoa Mac Storyboard Xcode 6 以外的其他类触发的工作表模态警报

转载 作者:行者123 更新时间:2023-12-03 17:20:39 26 4
gpt4 key购买 nike

我有一个简单的项目,其中包含 Mac OS X 应用程序的 Storyboard 。我在 NSView 上放置了一个按钮并创建了一个名为 OtherClass 的新类。然后我将 IBAction 链接到 OtherClass.h。现在我想让主窗口中出现一个模型表。当使用 ViewController 作为类时,我可以简单地执行以下操作:

NSWindow *window = [self.view window];
NSAlert *alert = [[NSAlert alloc]init];
[alert beginSheetModalForWindow:window completionHandler:nil];

但是我如何从另一个类中做到这一点?如果这很重要的话,我正在使用 Xcode 6.3。

感谢您的帮助

最佳答案

您可以简单地引用与按钮关联的窗口对象。所以你可以从你的OtherClass这样调用

-(IBAction)callSheet:(id)sender {

NSWindow *window;
if([sender respondsToSelector(@selector(window))]){

window = [sender window];

}else if([sender respondsToSelector(@selector(view))]){

window = [sender view].window;

}

//Now call your alert

}

关于objective-c - 从 ViewController Cocoa Mac Storyboard Xcode 6 以外的其他类触发的工作表模态警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29586336/

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