2016-11-21 2 views
0

Я работаю над пользовательским интерфейсом для моего приложения Cocoa. Осмотрев интернет, мне удалось научиться подклассифицировать большое количество объектов пользовательского интерфейса на MacOSX. Во многих случаях я мог бы выглядеть так, как хочу.Пример подкласса NSComboBoxCell?

Последний элемент пользовательского интерфейса, над которым я работаю, - NSComboBoxCell. Он выглядит как NSTextFieldCell с прикрепленным NSButtonCell. Часть, которую я хочу переопределить, - это NSButtonCell, который, я считаю, рисует «Стрелку». Кто-нибудь сделал это раньше, и если да, то какой метод используется, чтобы я мог изменить его внешний вид?

Есть ли способы узнать, где нарисовать NSButtonCell? (Могу ли я переопределить и установить свои собственные NSButtonCell?)

Спасибо!

+0

Из списка рассылки какао-Dev: _James Уокер писал: В моем NSComboBoxCell подклассу, я понял, где "кнопка" часть должна выглядеть следующим образом: _ 'NSRect drawingRect = [самоуправления drawingRectForBounds: cellFrame]; NSRect titleBounds = [self titleRectForBounds: drawingRect]; NSRect buttonBounds = NSMakeRect (NSMaxX (titleBounds), \t NSMinY (drawingRect), \t NSMaxX (drawingRect) - NSMaxX (titleBounds), \t NSHeight (drawingRect)); ' _and тогда я обратил свое собственное содержание кнопку. _ Это, похоже, работает для меня. Спасибо Джеймсу! –

ответ

0

Из какао-Dev список рассылки:

Джеймс Уокер писал: В моем NSComboBoxCell подклассу, я понял, где «кнопка» часть должна выглядеть следующим образом:

NSRect drawingRect = [self drawingRectForBounds: cellFrame]; 
NSRect titleBounds = [self titleRectForBounds: drawingRect]; 
NSRect buttonBounds = NSMakeRect(NSMaxX(titleBounds), NSMinY(drawingRect), NSMaxX(drawingRect) - NSMaxX(titleBounds), NSHeight(drawingRect)); 

А потом Я нарисовал свой собственный контент кнопки. Кажется, это работает для меня.

Спасибо, Джеймс!

 Смежные вопросы

  • Нет связанных вопросов^_^