2012-07-01 3 views
2

У меня есть NSMenu (принадлежащий NSPopUpButton), где у NSMenuItem все есть установленные изображения, и я бы хотел, чтобы они отображали только изображения, а не названия. Однако я не могу отменить названия, поскольку они обеспечивают доступность клавиатуры (и, я думаю, другую доступность). Есть ли способ скрыть заголовок, например, положение изображения NSImageOnly для NSButton?Скрыть заголовок NSMenuItem, просто показать его изображение?

ответ

1

временный обходной путь, который на самом деле не делает меня счастливым:

Вместо того чтобы устанавливать заголовок NSMenuItem, установите приписываемый заголовок приписанной строку предполагаемого заголовка с системным шрифтом в незримо-маленьком размер, такой как 0,01.

+1

Это больно +1, но это, кажется, самое надежное решение для Cocoa AppKit. –

0

По крайней мере, для первого элемента в меню, он отлично работает, когда делается так:

  1. инстанцировать NSPopUpButton в Interface Builder
  2. установлен тип Потяните вниз, стиль площадь и установить изображение ,
  3. Сделать положение изображения только (второй вариант в палитре)

Эти настройки все относятся к кнопке части управления, но она будет создавать меню с первым пунктом является изображение только меню пункт. На самом деле заголовок не установлен (о чем свидетельствует местозаполнитель, отображаемый в поле заголовка). Это должно означать, что yo может установить заголовок на nil, если вы сделаете это программно.

+0

Я думаю, что, когда он настроен на вытаскивание вместо всплывающего окна, первый пункт меню всегда отображается в кнопке, а не в меню (тогда как во всплывающем меню выбранный пункт меню отображается на кнопке и все пункты меню, включая первый, отображаются в меню). То есть, когда я это пробовал, мой первый пункт меню больше не показывался в меню, и все мои последующие пункты меню по-прежнему отображали как их изображения, так и их названия. – Isaac