Cocoa 自定义NSControl目标/操作指南!
我有一个自定义的NSControl,它就像一个二维滑块,你可以在视图中拖动一个控制柄。我添加了一些特定于类的方法,唯一被我覆盖的是鼠标操作和drawRect。我的问题是,我如何让it部门实施目标行动?我怎样才能使它像一个滑块一样,连续地向绑定的目标发送动作消息?到目前为止,我可以在interface builder中连接它,但没有发送任何操作。我读过很多关于sendActionOn:和sendAction:to:等方法的书,但我不知道如何使用它们。如果有人能解释一下,我肯定会明白的。Cocoa 自定义NSControl目标/操作指南!,cocoa,class,action,target,Cocoa,Class,Action,Target,我有一个自定义的NSControl,它就像一个二维滑块,你可以在视图中拖动一个控制柄。我添加了一些特定于类的方法,唯一被我覆盖的是鼠标操作和drawRect。我的问题是,我如何让it部门实施目标行动?我怎样才能使它像一个滑块一样,连续地向绑定的目标发送动作消息?到目前为止,我可以在interface builder中连接它,但没有发送任何操作。我读过很多关于sendActionOn:和sendAction:to:等方法的书,但我不知道如何使用它们。如果有人能解释一下,我肯定会明白的。-sendA
-sendActionOn:
仅当您将NSControl子类化并实现一个单元格时才相关,而您不是
在
-mouseDragged:
(或者从-mouseDragged:
调用任何方法来更改滑块位置)中,您只需调用[[self-target]performSelector:[self-action]]
这是错误的,原因有两个。首先它忽略响应器链,其次它不作为参数传递发送器。正确的方法是[NSApp sendAction:[self action]to:[self target]from:self]
启用ARC后,您还可以使用性能选择器:
方法获得警告。