我必须做一个简单的应用程序,当按下按钮时,应该会出现一个新窗口。
我尝试过
- (IBAction)LanciaPavia:(id)sender {
NSWindowController *controllerWindow = [[NSWindowController alloc] initWithWindowNibName:@"AOPAVIAWindowController"];
[controllerWindow showWindow:self];
}
但是会出现新窗口,并立即关闭。我需要做什么?我不知道要继续,而且我是可可世界的新手!
最佳答案
答案的关键是范围:
- (IBAction)LanciaPavia:(id)sender {
NSWindowController *controllerWindow = [[NSWindowController alloc] initWithWindowNibName:@"AOPAVIAWindowController"];
[controllerWindow showWindow:self];
} // controllerWindow goes out of scope
在该作用域的末尾,
controllerWindow
将超出作用域(我假设您使用的是ARC),因此将破坏窗口控制器并关闭窗口。将其设置为实例变量,最好仅创建一次。
关于objective-c - 如何使用按钮在 cocoa Mac应用程序中打开新窗口,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19125430/