Objective c 接收双击事件
我一直在搜索苹果文档,我能找到的关于双击的唯一功能只是返回了可以接受的两次点击之间的时间间隔,这被认为是双击Objective c 接收双击事件,objective-c,macos,cocoa,mouseevent,nsevent,Objective C,Macos,Cocoa,Mouseevent,Nsevent,我一直在搜索苹果文档,我能找到的关于双击的唯一功能只是返回了可以接受的两次点击之间的时间间隔,这被认为是双击 有人能给我看一个双击事件的例子吗?覆盖NSResponder方法-mouseUp:并检查提供的事件的点击次数。如果clickCount==2,则您看到的是双击。如果为1,则单击一次。0,然后他们在鼠标向下和鼠标向上之间等待了足够长的时间,系统决定这不是单击,而是不同的向下和向上事件 - (void)mouseUp:(NSEvent *)event { NSInteger clic
有人能给我看一个双击事件的例子吗?覆盖
NSResponder
方法-mouseUp:
并检查提供的事件的点击次数
。如果clickCount==2
,则您看到的是双击。如果为1,则单击一次。0,然后他们在鼠标向下和鼠标向上之间等待了足够长的时间,系统决定这不是单击,而是不同的向下和向上事件
- (void)mouseUp:(NSEvent *)event
{
NSInteger clickCount = [event clickCount];
if (2 == clickCount) [self handleDoubleClickEvent:event];
}
这假定处理单击的对象是响应者链的一部分。如果没有,你就得换一种方式,类似于子类化
NSApplication
或NSWindow
并重写-sendEvent:
,以便在进一步传递之前拦截适当的事件。请参阅NSEvent的-clickCount
方法。还请注意,一些NSControl
具有设置doubleAction:
,以便选择器通过setDoubleAction注册:
发送到目标。见官方文件
- ,
- ,
- ,
- ,