我被困住了!显然......因为我在这里发帖提问。
我已经为我的OS X / cocoa应用程序构建了自己的自定义窗口控件。关闭按钮效果很好 - 没问题。当我禁用标题栏时,最小化按钮根本不起作用。
因此,当标题栏像上面的图像一样打开并且我点击此方法时,最小化工作正常:
ViewController.h
@interface ViewController : NSViewController {
- (IBAction)minimize:(id)sender;
@property (strong) IBOutlet NSButton *btn_minimize;
}
@end
ViewController.m
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
- (IBAction)minimize:(id)sender {
[[NSApp mainWindow] performMiniaturize:self];
}
-(IBAction)terminate:(id)sender {
[NSApp terminate:self];
}
@end
然后,如果我禁用标题栏,则同样的方法停止工作。没有错误,没有。我试过了两个:[[NSApp mainWindow] miniaturize:nil];
和[[NSApp mainWindow] performMiniaturize:self];
。两者都没有效果。实际上......如果标题栏打开,两者都有效。但是一旦我把它关掉,就不会工作。
思考/评论?
哦,我正在使用Storyboard,Xcode 7,我的目标是10.10并使用10.11 SDK,如果这很重要的话。
提前致谢。
答案 0 :(得分:0)
就我而言,我想完全删除标题栏并通过其他方式(例如:键分配)触发小型化。
我发现需要确保窗口样式掩码包含 NSMiniaturizableWindowMask
才能使 NSWindow::miniaturize
生效。