2014-01-11 2 views
0

У меня есть 2 tableviews в мое приложение, которое я использую подобным образом на следующем скриншоте:Несколько NSTableViews выбор

Example of App design

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

Я обнаружил, что, если я перегружаю метод AcceptsFirstResponder в tableview, я могу сохранить серое выделение, но это не желаемый вид приложения.

Есть ли у кого-нибудь советы о том, как я могу это достичь? Я думал, что могу изменить серое на синее, сохраняя перегруженный метод AcceptsFirstResponder, но я не уверен, что это возможно.

Приветствия, Майк

ответ

1

Убедитесь, что ваш NSTableView вид на основе, и проверить NSTableRowView-х

- (void)drawSelectionInRect:(NSRect)dirtyRect; 

BTW, я обязан призвать вас не делать этого: цвета имеют значения в пользовательском интерфейсе. Этот синий цвет означает «если вы нажмете клавишу (например, стрелку вверх), это будет представление, которое получит ее». Ваши пользователи будут смущены.

+0

Я собираюсь взять ваш совет и снова взглянуть на то, как я это достигаю. Я думаю, что использование NSOutlineView для самого дальнего левого списка даст мне достаточно хороший взгляд, сохраняя совместимость с другими приложениями Mac. –

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