2011-07-27 3 views
1

У меня в моем приложении Mac есть NSMatrix, состоящий из NSButtonCells. Я делаю это:setAction: Always Called with mouseUp

[matrix setAction:@selector(matrixbutton:)]; 

Однако это всегда называется, когда пользователь отпускает щелчок мыши. Можно ли изменить это так, чтобы он вызывается, как только мышь идет вниз?

Спасибо.

ответ

0

Нет; элементы управления на Mac активируются с помощью мыши, а не мыши. (В противном случае невозможно различать щелчок и перетаскивание, например, поскольку оба начинаются с мыши-вниз.)

+0

Что бы вы предложили мне сделать, чтобы мой метод выполнялся на mouseDown моего NSButtonCell? Поскольку я не считаю, что NSButtonCell имел событие mouseDown. –

+0

NSMatrix является подклассом NSView, поэтому вы можете создать свой собственный подкласс и работать таким образом. Кроме того, взгляните на метод '- [NSCell sendActionOn:]', который позволит вам изменить, какие события вызывают действие. – duskwuff