2011-08-25 3 views
4

NSWindow에서 마우스 다운을 감지하고 싶습니다. 실제로 NSWindow의 제목 표시 줄을 클릭하여 전체 시스템에 기능을 추가하려고합니다. 그러나 NSWindow의 제목 표시 줄이나 크롬과 같은 항목에는 액세스 할 수 없습니다. 어떤 클릭을들을 수 있고 창의 크기와 위치를 기반으로 클릭이 제목 표시 줄 내에 있는지를 알아내는 수학을 수행하지만 더 좋은 방법이 있는지 알고 싶었습니다. 감사!모든 창의 제목 표시 줄에서 클릭을 감지하는 방법은 무엇입니까?

답변

1

윈도우의 프레임에서 mouseDown 이벤트를 수신해야합니다. 창 프레임은 [[window contentView] superview] 아래에 숨겨져 있습니다. NSWindow를 하위 클래스로 만들고 프레임의 NSView 구현을 만들 수도 있습니다 (약간의 작업이라고 생각합니다). 또는 mouseDown 메서드를 직접 구현해보십시오. 여기서 http://parmanoir.com/Custom_NSThemeFrame은 drawRect 메소드에서 이와 같이 할 수있는 방법을 보여줍니다. 희망이 도움이됩니다.

+1

감사합니다. 그것은 내가 시험 할 좋은 지적입니다. 하지만 대부분의 경우 시스템 플러그 인에 관심이있어 어떤 창에서나이를 감지했습니다. – akaru

관련 문제