对于大多数操作,我只需在InterfaceBuilder中单击并拖动,将某个接口对象的调用“连线”到我的代码。例如,如果我想知道用户何时单击表中的一行,我将表中操作的连接拖动到控制器的操作中。为什么只有一些操作必须调用setTarget?
但现在让我们考虑用户双击一行。如果我希望在发生这种情况时调用我的某个操作,则不仅需要拨打-[NSTableView setDoubleAction]
,还需拨打也可拨打-[NSControl setTarget]
。为什么?请问为什么Interface Builder不支持setDoubleAction
?所有工具都有局限性。我正试图更好地了解如何以及为什么setTarget
似乎没有必要,除非我想要setDoubleAction
才能工作。提出这个问题的另一种方法是:为什么我不需要在Interface Builder中做任何事情来设置表(单击)操作的目标?