Технические вопросы и ответы QA1029

Как заставить пользовательские представления обнаруживаться в NSToolbarItems

Q: Почему пользовательские представления не обнаруживаются в NSToolBarItem?

A: Я создал NSToolbarItem и добавил пользовательское использование представления -setView:. Мое пользовательское представление никогда не обнаруживается в моем NSToolbar, однако, даже после добавления NSToolbarItem и установки NSToolbar в моем окне. Мои стандартные NSToolbarItems (которые содержат изображения) обнаруживаются очень хорошо. Что я делаю неправильно здесь?

NSToolbarItems имеют минимальную/максимальную ширину/высоту по умолчанию 0,0. Вызов -setImage: на NSToolbarItem для предоставления его изменения образа размер, чтобы быть размером изображения, но вызовом -setView: чтобы вместо этого дать ему, пользовательское представление не делает. Таким образом Ваше пользовательское представление никогда не видимо на экране, потому что это имеет минимальную/максимальную ширину и высоту 0. Вызвать -setMinSize: и -setMaxSize: на Вашем NSToolbarItem для установки надлежащих размеров при создании его и пользовательского представления станет видимым.

Перечисление 1  пример установки размера NSToolbarItem:

[newNSToolbarItem setMinSize:[customView bounds].size]; [newNSToolbarItem setMaxSize:[customView bounds].size];


История версии документа


ДатаПримечания
07.09.2011

Переформатированное содержание и внесло незначительные редакционные изменения.

03.05.2001

Новый документ, что, почему пользовательские представления могут не обнаружиться в NSToolBarItem и как сделать его видимым.