Создание панели инструментов на интерфейсном разработчике

Начиная с OS X v10.5 (Leopard), можно создать панель инструментов на Интерфейсном Разработчике. Можно сделать почти что-либо с панелями инструментов на Интерфейсном Разработчике, которого можно сделать программно. Во время выполнения можно объединить панели инструментов и элементы панели инструментов, разархивированные от файла пера и тех, которые программно создаются.

Добавление панели инструментов на окно

Откройте файл пера своего приложения и ищите библиотеку Interface Builder «панель инструментов». Объект панели инструментов и много элементов панели инструментов перечислены в библиотеке.

Toolbar and toolbar items in the IB Library

Перетащите объект панели инструментов на окно. Взаимодействуйте через интерфейс Разработчик автоматически располагает его ниже шпингалета и выше представления содержания окна. Это выводит на экран набор по умолчанию "по умолчанию” элементов панели инструментов.

The default toolbar in Interface Builder

Выберите панель инструментов (если она уже не выбрана), и выведите на экран область Attributes для панели инструментов на инспекторе (Команда 1). Установите желаемые атрибуты панели инструментов; удостоверьтесь Настраиваемые, выбран, если Вы хотите, чтобы пользователи добавили элементы от позволенного набора.

Attribute pane for a toolbar object

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

Добавление и конфигурирование элементов панели инструментов

Затем Вы добавляете и возможно удаляете элементы панели инструментов и к позволенному набору элементов и к набору по умолчанию. Элемент панели инструментов может быть одним из стандартных (например, Цвета) или может быть пользовательским элементом панели инструментов. Запустите путем щелчка по панели инструментов, если она уже выбрана или двойной щелчок по нему, если она не выбрана. Это выводит на экран представление, содержащее позволенные элементы панели инструментов.

Allowed toolbar items in Interface Builder

Для добавления элемента панели инструментов перетащите его из библиотеки на строку позволенных элементов панели инструментов. Если Вы хотите, чтобы тот же элемент был в наборе по умолчанию, перетащите его от позволенных элементов панели инструментов на панель инструментов. Расположите его, где Вы хотите, чтобы он появился. Для удаления элемента вырвите его из окна и отпустите кнопку мыши; это применяется к элементам панели инструментов и в наборе по умолчанию и в позволенном наборе.

Пользовательские панели инструментов являются двумя видами: пользовательское изображение и пользовательское представление. Для добавления элемента панели инструментов пользовательского изображения перетащите элемент панели инструментов Image из библиотеки и отбросьте его на строке позволенных элементов. Завершите следующие шаги для конфигурирования пользовательского элемента панели инструментов:

  1. Добавьте изображение, которое Вы хотите использовать для элемента панели инструментов для проекта (Проект> Добавляют к Проекту).

  2. Выберите пользовательский элемент панели инструментов и выведите на экран атрибуты для него (Команда 1).

  3. Введите имя файла образа (минус расширение) в поле Image Name.

  4. Введите метки и номер тега для элемента панели инструментов и выберите опцию Autovalidates.

    Можно использовать тег элемента панели инструментов в качестве способа получить доступ к нему программно от его панели инструментов.

Attributes for a toolbar item

Для опции Priority см. описание setVisibilityPriority: метод.

Вы пользовательский элемент панели инструментов будете выглядеть подобными тому в этом примере.

Allowed toolbar items with custom toolbar item

Если Вы хотите этот элемент панели инструментов в наборе по умолчанию, перетащите его на панель инструментов.

Процедура для добавления пользовательского элемента представления очень подобна этому для элемента пользовательского изображения. («Пользовательский» в этом контексте означает любой объект от библиотеки Interface Builder, а также экземпляров пользовательского NSView подкласс.) Просто перетаскивают любой объект представления из библиотеки на область Allowed Toolbar Items. Щелкните по элементу один раз и нажмите Command 1 для отображения области Attributes для объекта как элемент панели инструментов; щелкните для редактирования атрибутов элемента как самого. Необходимо изменить размер пользовательского элемента представления в области Size инспектора, не непосредственно. При перетаскивании Пользовательского объекта Представления в набор позволенных элементов щелкните по нему дважды и определите имя пользовательского NSView класс в области Identity инспектора (Команда 6).

Ставя цель, действие и делегата панели инструментов

После завершения значения по умолчанию и позволенных наборов элементов панели инструментов удостоверьтесь, что надлежащие устанавливаются для вызова целевого метода в целевом объекте. Например, для пользовательского элемента панели инструментов Вы завершили бы следующие шаги:

  1. Объявите метод действия (возвратите тип IBAction) в заголовочном файле класса, экземпляр которого является целью.

  2. Выберите объект, представляющий этот класс в Интерфейсном окне документа Разработчика (это часто - Владелец Файла).

  3. Щелкните правой кнопкой (или Щелчок управления) для отображения окна соединений; найдите метод действия при Полученных Действиях.

  4. Перетащите строку соединения от круга после имени действия к элементу панели инструментов в позволенном наборе.

  5. Реализуйте метод действия.

Наконец, сделайте соединение между delegate свойство панели инструментов и объекта (если таковые имеются), который реагирует на сообщения делегации, отправленные панелью инструментов.