Как заставить NSWindow принимать события mouseMove сразу после открытия? - PullRequest
1 голос
/ 07 сентября 2011

Я пишу приложение с использованием какао, которое в какой-то момент (неожиданно) открывает окно.
В этом окне есть функциональность "Hover", и для этого мне нужно принять события mouseMoved.Мне удалось активировать эту функцию с помощью вызова

[[newView window] setAcceptsMouseMovedEvents:YES];

, однако он начал работать только после того, как я коснулся открытого окна, фактически активировав его таким образом.Мне интересно, чтобы он работал сразу, не нажимая на него.

- (BOOL)acceptsFirstMouse:(NSEvent *)theEvent 

, похоже, не работает, поскольку его активируют только события mouseDown или mouseDragged.По-видимому, событие mouseMoved не выполняется.

Другими словами, событие mouseMoved начинает работать только после вызова события mouseDown или mouseDragged.

1 Ответ

2 голосов
/ 07 сентября 2011

Используете ли вы NSTrackingArea для этого? Вы прошли опцию NSTrackingActiveAlways?

...