NSApp beginSheet非常简短地创建一个工作表然后消失

时间:2011-08-16 17:29:43

标签: objective-c macos cocoa cocoa-sheet

像这样使用

[NSApp beginSheet]

[NSApp beginSheet:[testSheetController window]
   modalForWindow:[NSApp mainWindow]
    modalDelegate:nil
   didEndSelector:nil
      contextInfo:nil];

执行时,工作表会暂时显示,虽然它是浮动的,而不像通常那样连接到窗口,然后消失。已验证[NSApp mainWindow]不是nil。没有例外。任何人都可以建议可能导致这种行为的原因吗?

我正在添加到现有项目中,并且我一直在尝试模仿正在使用此窗口的其他表单控制器的结构和创建。

1 个答案:

答案 0 :(得分:1)

这些似乎是两个截然不同的问题:您的工作表可能会因为早期发布而消失。只要工作表可见,请确保保留testSheetController。处于分离状态的短暂闪烁可能是由于启动时可见属性导致的,您可以在Xcode / Interface Builder中编辑NIB / XIB时关闭。