15

我认为这是第一响应者的问题,但我不确定。我正在为表格视图中的数据实现一个编辑窗口。在概念上与 Mail.app 中编辑过滤规则的 UI 非常相似。

我有一个编辑窗口,我附加到我的主窗口:

[NSApp beginSheet: criteriaEditPanel 
   modalForWindow: [self window] 
    modalDelegate: self 
   didEndSelector: @selector(criteriaEditDidEnd:returnCode:contextInfo:) 
      contextInfo: (void *)[criteriaList objectAtIndex: index]];

面板从主窗口的标题栏中正确显示。我可以用鼠标操作面板上的弹出控件,但我不能编辑文本字段,也不能在字段之间切换。其他一切正常。有任何想法吗?

4

1 回答 1

36

解决了。信不信由你,您必须为面板启用标题栏,即使它在显示为工作表时永远不可见。在 IB 中启用它后,键盘输入开始工作。

@spudwaffle - 没有检查过拒绝第一响应者的对象。

于 2011-08-20T17:23:07.363 回答