gpt4 book ai didi

objective-c - 如何使 NSWindowController 在 OSX Lion 中以全屏模式运行?

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

我广泛搜索了如何以编程方式使 NSWindowController 在 OSX Lion 中以全屏模式运行,但没有成功。

我什至购买了“Sams 自学 Mac OS X Lion 应用程序开发”,因为第 21 章/小时应该教如何做到这一点。我看到一些评论说这本书中的代码经常不起作用。无论如何,我捕获了机会,呃!

这是a link上述章节的示例。

基本上,这是我基于上面列出的第 21 个小时的测试程序:

#import <Cocoa/Cocoa.h>

@interface WeatherWindowController : NSWindowController

- (IBAction)toggleFullScreen:(id)sender;

@end

我添加了一个 NSObject 并为其分配了 WeatherWindowController。我有一个正确连接的按钮,因为它正确记录 NSLog 语句。

#import "WeatherWindowController.h"

@interface WeatherWindowController ()

@end

@implementation WeatherWindowController

- (id)initWithWindow:(NSWindow *)window
{
self = [super initWithWindow:window];
if (self) {
// Initialization code here.
}
return self;
}

-(void) awakeFromNib{
self.window.collectionBehavior = NSWindowCollectionBehaviorFullScreenPrimary;
}

- (void)windowDidLoad
{
[super windowDidLoad];
// Implement this method to handle any initialization after your window controller's window has been loaded from its nib file.
}

- (IBAction)toggleFullScreen:(id)sender {
NSLog(@"before toggleFullScreen");
[self.window toggleFullScreen:sender];
NSLog(@"after toggleFullScreen");
}
@end

最佳答案

不需要在窗口 Controller 中实现此方法,因为它的窗口也将在响应程序链中,因此当您选择“进入/退出全屏”菜单项时应该接收操作您已添加到 View 菜单并连接到第一响应者。

那么,假设您已经创建并配置了该菜单项,那么当您选择它时发生什么?

关于objective-c - 如何使 NSWindowController 在 OSX Lion 中以全屏模式运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10220268/

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