Отключить NSView Mousedown - PullRequest
       50

Отключить NSView Mousedown

2 голосов
/ 22 марта 2012

У меня есть NSScrollView с NSView, установленным как его представление документа. Я пытаюсь получить событие mousedown в NSScrollView, но NSView продолжает его перехватывать. Есть ли способ предотвратить это?

Также есть способ остановить его в одной области обзора, так же, как NSTrackingArea для мыши.

Заранее спасибо,

Ben

1 Ответ

2 голосов
/ 23 марта 2012

Можете ли вы переопределить -mouseDown: в своем подпредставлении, чтобы просто переслать событие следующему респонденту?

Это также можно сделать, переопределив -hitTest: суперпредставления для возврата либо самого себя (если вы не хотите, чтобы подпредставления получали события), либо подпредставления (во всех других случаях, когда подпредставление содержит местоположение события).

Что касается вашего последнего вопроса, вы можете выполнить это также с помощью -hitTest:. Просто верните self, если событие происходит в «зоне исключения» подпредставления.

Если вы идете по этому маршруту, обязательно обращайте внимание на используемую систему координат в любой момент времени и при необходимости выполняйте преобразование между ними.

...