我需要在首次运行后显示主窗口后立即显示工作表对话框。如果我在init中执行或从nib中唤醒,它似乎无法正常工作(如果我在init方法中执行,则表单显示为从主窗口分离的窗口)。我猜我必须在父窗口显示后显示工作表。我有一个appcontroller类,它有一个窗口指针。所以我想我需要注册成为委托或窗口的东西?并实现一些接收该呼叫的方法? 谢谢,
答案 0 :(得分:2)
没有可靠的事件,通知或委托方法调用。期望您的代码负责显示窗口,因此它应该已经知道窗口何时显示。
您是否依赖于Interface Builder中设置的Visible at Launch属性?如果是这样,你用什么加载NIB?希望是一个窗口控制器。在这种情况下,您应该调用-window
方法来加载NIB并获取窗口。生成的窗口引用将传递给开始工作表的方法。
如果在启动时不依赖于Visible,您使用什么代码来显示窗口?例如,在窗口控制器上调用-showWindow:
?因此,请将代码放在显示之后。
答案 1 :(得分:1)
applicationDidFinishLaunching:
是您的切入点。应用程序设置完毕后,会在用户有机会与其进行交互之前将其发送给您的应用代理。