5

我需要一个全屏窗口,里面有很多东西,由 Cocoa Xcode 4 制作。但是有一个持续的警告:每当我尝试调整主窗口的大小时,我都会收到这个警告(代码编译得很好,但我确信小屏幕用户会出现问题)这是警告:

“不支持的配置内容矩形不完全显示在带有菜单栏的屏幕上(可能无法完全看到所有屏幕分辨率和配置)”

我有两个问题:

1-消除此警告的最佳方法是什么(使用较小的窗口除外,因为警告从大约 560 x 560 窗口大小开始。我不能用这么小的屏幕来显示这些东西)

2-如何告诉程序一开始就全屏打开?

4

2 回答 2

3
  1. 您只需要在 IB 的尺寸检查器中移动窗口。

  2. 这个SO question应该回答这个问题。

于 2012-09-14T12:28:35.923 回答
2

这是我可以在此链接下使用的代码,谢天谢地“特洛伊木马”让我知道

在全屏模式下创建 NSWindow

这是简化的代码:

请记住,Cocoa 不会在 AppDelegate.m 中为默认窗口创建 @synthesize。您需要添加@synthesize 窗口;手动

1-首先我们用屏幕尺寸填充screenRect 2-尺寸检查器将窗口位置设置为“从左侧固定”并进行所需的任何偏移量,您必须稍后在代码中支付该偏移量(这里我使用了10像素的偏移量和40像素的回报. 这导致窗口大小与 Xcode 完全相同! 在此处输入图像描述

3-添加此代码:

  • (void)applicationDidFinishLaunching:(NSNotification *)aNotification {

    // 设置为全屏打开:

    NSRect 屏幕矩形;

    NSSize 屏幕尺寸;

    NSArray *screenArray = [NSScreen 屏幕];

    NSUInteger screenCount = [screenArray 计数];

    for (NSUInteger index=0; index < screenCount; index++)

    {

    NSScreen *screen = [screenArray objectAtIndex: index];
    
    screenRect = [screen visibleFrame];
    

    }

    // 现在 screenRect 包含屏幕大小

    screenSize.height=screenRect.size.height; screenSize.width= screenRect.size.width;

    [窗口设置内容大小:屏幕大小];}

在此处输入图像描述

于 2012-09-14T13:52:01.590 回答