2011-08-05 10 views
0

를 잡을 내가 NSControl Class ReferencemouseDown에 따르면 코드NSButton은 마우스 클릭 이벤트

#import <Cocoa/Cocoa.h> 


@interface MyButton : NSButton 
{ 

} 

- (void)mouseDown:(NSEvent *)theEvent; 

@end 

#import "ContextMenuButton.h" 


@implementation MyButton 

- (void)mouseDown:(NSEvent *)theEvent; 
{ 
    // ... 
} 

이 사용자가 마우스 왼쪽 버튼을 누른 것을 수신기를 알려줍니다.

마우스 오른쪽 버튼과 다른 버튼을 어떻게 잡을 수 있습니까?

+0

마지막 작업이 무엇인지 잘 모르겠지만 새 단추 유형을 정의하려면 NSButtonCell을 하위 클래스로 만드는 것이 좋습니다. – Gobra

답변

1

NSControlNSResponder로부터 간접적으로 도출, 및 그 방법 mouseDown:, rightMouseDown:otherMouseDown:와, 세 개의 매개 변수로 NSEvent* 가지고있다.

+0

감사합니다. 좀 더 정확하게'NSView' 클래스는'- (void) rightMouseDown : (NSEvent *) theEvent' 메소드를 필요로합니다. –

0

NSButton은 왼쪽 버튼을 클릭 할 때만 응답합니다. 어쨌든 NSEvent type을 살펴보십시오. 그것은 버튼을 눌렀을 때를 포함하여 이벤트에 대한 많은 정보를 결정합니다.

관련 문제