Показать выбранный элемент подменю в NSPopUpButton

Я заполнил свой NSPopUpButton меню и подменю.

Когда я выбираю элемент меню в корневом меню (а не подменю), он правильно отображает выбранный элемент меню. И когда я повторно нажимаю кнопку всплывающего окна, я получаю выбранный элемент меню под мышью.

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

Любое решение?


person Leonardo    schedule 14.02.2014    source источник


Ответы (1)


Рекомендации по человеческому интерфейсу состояние:

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

Я предполагаю, что, поскольку практика не приветствуется (хотя и не так сильно), она также не поддерживается. Я вижу, как подменю нарушают некоторые функции NSPopUpButton, все методы, связанные с индексом элементов, не имеют смысла. Эти методы должны будут использовать NSIndexPaths вместо простых индексов.

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

person harrisg    schedule 26.09.2014