3

我有一个基于视图的 NSTableView,其中的单元格包含许多控件,包括文本字段和编辑字段。例如,当用户尝试单击单元格中的控件以开始编辑文本字段时,将忽略单击的主要目标并选择单元格。然后需要再次单击来执行最初打算执行的操作,即使此单击在考虑到它之前也会受到延迟。

如何避免此问题并一次性选择行并将鼠标事件转发到控件?

4

2 回答 2

19

我通过继承 NSTableView 解决了这个问题:

@implementation QuickResponseTableView

- (BOOL)validateProposedFirstResponder:(NSResponder *)responder forEvent:(NSEvent *)event
{
    // This allows the user to click on controls within a cell withough first having to select the cell row
    return YES;
}

@end
于 2012-11-27T07:38:36.933 回答
7

有同样的问题。经过一番努力,当我在 IB中选择None默认Regular选项(其他选项是Source List)时,它神奇地起作用了!Highlight与此相比,接受的答案似乎更具体,但有点老套。

于 2013-03-26T10:07:56.417 回答