我目前打开一个窗口,通过以下方式打开:
// 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]];
第一个窗口正确消失,出现第二个窗口。但我实际上无法在输入中使用NSTextField。但我可以单击取消按钮隐藏SecondWindowController并将焦点重新放回FirstWindowController。
为什么我无法点击任何NSTextField元素?
答案 0 :(得分:1)
我遇到了同样的问题。它在窗口有标题栏时有用,否则没有。看起来窗口需要有一个标题才能成为一个关键的窗口。
解决方法是创建NSWindow的子类并覆盖-canBecomeKeyWindow: