2010-05-19 5 views
0

Мне нужно разделить один и тот же экземпляр NSMenu между несколькими всплывающими кнопками.Как лучше всего поделиться NSMenu между несколькими экземплярами NSPopUpButton

Когда я создаю NSPopUpButton в IB, новое меню автоматически создается и вставляется в качестве дочернего элемента NSPopUpButtonCell.

На данный момент я просто создаю членство в стандартном модуле IBOutlet NSMenuItem * в моем MainController и подключаю к нему «пункты меню» всплывающих кнопок, но это оставляет «поддельные» меню в иерархии.

Наверняка, есть чистый способ сделать это изнутри IB?

Заранее благодарим за любой совет, который вы могли бы дать.

ответ

1

Вы должны иметь возможность создать автономное меню в IB, чтобы все соединения и т. Д. Вам нужно. Затем создайте выход IBOutlet NSMenu *standardMenu;, который вы подключаете к меню в IB. Затем для каждого всплывающего окна, для которого требуется меню, просто используйте [popupButton setMenu:standardMenu];. Если по какой-то причине он хранит старые предметы, просто скажите ему сначала удалить все предметы.

+1

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

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