我正在制作一个简单的 Mac 应用程序,我想在其中切换窗口。
我有两个 NSWindowController 类MainWindow
和DetailWindow
我正在使用这段代码:
主窗口类:
//MainWindow.h
@class DetailWindow;
@interface MainWindow : NSWindowController{
IBOutlet NSButton *btn1;
DetailWindow *detailwindow;
}
@property (nonatomic, retain) IBOutlet NSButton *btn1;
- (IBAction)btn1Event:(id)sender;
//MainWindow.m
@implementation MainWindow
@synthesize btn1;
- (IBAction)btn1Event:(id)sender {
if (!detailwindow) {
detailwindow = [[DetailWindow alloc] initWithWindowNibName:@"DetailWindow"];
}
[detailwindow showWindow:self];
}
@end
细节窗口类:
//DetailWindow.h
@class MainWindow;
@interface DetailWindow : NSWindowController{
IBOutlet NSButton *backbtn;
MainWindow *mainwindow;
}
@property (nonatomic, retain) IBOutlet NSButton *backbtn;
- (IBAction)back:(id)sender;
//DetailWindow.m
@implementation DetailWindow
@synthesize backbtn;
- (IBAction)back:(id)sender {
if (!mainwindow) {
mainwindow = [[MainWindow alloc] initWithWindowNibName:@"MainWindow"];
}
[mainwindow showWindow:self];
}
@end
现在的问题是当我点击backbtn on DetaiWindow
它会打开一个新的MainWindow
.
所以我有两个MainWindow
在屏幕上。
当我点击 backbtn 时,我只想要前面的主窗口。
有什么帮助吗??
谢谢..!!