无法专注于NSTextFields从模态窗口

问题描述:

我现在有一个窗口打开,其经开:无法专注于NSTextFields从模态窗口

// FirstWindowController 
[self showWindow:self]; 
[[self window] makeKeyAndOrderFront:self]; 
[NSApp runModalForWindow:[self window]]; 

而且在按一下按钮,我想通过隐藏FirstWindowController:

// FirstWindowController 
[self.window orderOut:self]; 

然后显示我的第二个窗口:

// SecondWindowController 
[self showWindow:self]; 
[[self window] makeKeyAndOrderFront:self]; 
[NSApp runModalForWindow:[self window]]; 

第一窗口中正确消失,出现在第二个窗口。但我实际上不能在输入中使用NSTextFields。但是我可以单击取消按钮来隐藏SecondWindowController并将焦点返回给FirstWindowController。

为什么我不能点击任何NSTextField元素?

+0

您可以附加一个示例项目与XIBs。我会看看它。 –

我有同样的问题。它在窗口有标题栏时工作,否则不起作用。看起来窗口需要有一个标题才能成为一个关键窗口。

这种情况的解决方法是使NSWindow的子类,并覆盖-canBecomeKeyWindow:

  • (BOOL)canBecomeKeyWindow { 返回YES; }