NSButton рисует альтернативное изображение при клике - PullRequest
1 голос
/ 28 марта 2012

Я знаю, что это, вероятно, очень легко, но мне трудно пробираться по заголовочным файлам и мог бы использовать некоторые рекомендации.

У меня есть NSPopUpButton, определенный в наконечнике с прикрепленным к нему меню. Я определил его в наконечнике как «Pull Down» без стрелки (на изображениях, предоставленных мне нашим дизайнером, есть специальная стрелка, которую он хочет использовать). Это кнопка без границ. title правильно пустой, хотя я установил image и alternateImage.

То, что я ищу, это конфигурация, либо в кончике, реализации владельца файла, либо в подклассе NSPopUpButton, которая позволит мне отображать альтернативное изображение кнопки (или любое другое изображение), пока меню кнопки отображается Вместо этого похоже, что система затемняет изображение кнопки.

Я пробовал множество конфигураций пера, различные свойства NSButton и NSButtonCell, переопределение mouseDown и mouseUp. Ничто, что я делаю, не работает.

Ответы [ 2 ]

4 голосов
/ 28 марта 2012

Если игра со свойством «Тип» не помогает, вам, возможно, придется создать подкласс для рисования NSButtonCell, чтобы получить то, что вы хотите.

- (void)drawImage:(NSImage *)image withFrame:(NSRect)frame inView:(NSView *)controlView в NSButtonCell кажется многообещающим.

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

Я думаю, что это обычное время класса NSButtonCell; Я не знаю способа переопределить тему для кнопок этого типа.

Ваша единственная альтернатива - использовать обычный NSButton с соответствующим изображением и вручную показывать меню в правильном положении, что, вероятно, будет намного проще реализовать.

...