У меня есть код
#import <Cocoa/Cocoa.h> @interface MyButton : NSButton { } - (void)mouseDown:(NSEvent *)theEvent; @end #import "ContextMenuButton.h" @implementation MyButton - (void)mouseDown:(NSEvent *)theEvent; { // ... }
В соответствии с NSControl Class Reference mouseDown сообщает приемнику, что пользователь нажал левую кнопку мыши.
mouseDown
Как я могу поймать щелчки правой и других кнопок мыши?
NSControl косвенно происходит от NSResponder, и имеет методы mouseDown:, rightMouseDown: и otherMouseDown:, все три принимают NSEvent* в качестве параметра.
NSControl
NSResponder
mouseDown:
rightMouseDown:
otherMouseDown:
NSEvent*
NSButton реагирует только на нажатие левой кнопки.В любом случае взгляните на NSEvent типа .Он определяет много информации о событии, включая нажатие кнопки.
NSButton