NSToolbarItemGroup без пробелов

Я использую NSToolbarItemGroup для группировки набора NSToolbarItem вместе. В настоящее время между каждым элементом в группе имеется интервал 2pt, в идеале я бы хотел, чтобы они были полностью объединены визуально, как NSSegmentedControl.

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

Текущий вид:

Желаемый вид:

Я знаю, что "Центрирование" обрезается, это просто быстрое внедрение.

2 ответа

Вы можете добавить объект NSToolbarItem на панель инструментов, а затем установить NSViewController следующим образом (используя Swift):

runStatus.view = RunStatusView()

где "runStatus" - это имя @IBOutlet для NSToolbarItem, а "RunStatusView" - это объект NSView с переопределением для метода drawRect. Вы также можете указать ширину и высоту NSView; например, заставить ширину быть постоянной на 125:

runStatus.minSize = NSSize(width: 125, height: 32)
runStatus.maxSize = NSSize(width: 125, height: 32)

Это может заставить элементы NSToolbar казаться ближе друг к другу, в зависимости от того, что вы рисуете на них.

Наконец, если вы все еще не можете получить именно то, что вы хотите, то сделайте группу кнопок единым NSToobarItem и в "RunStatusView" (используя приведенный выше пример) нарисуйте его так, как вы хотите, и переопределите событие mouseDown (также в "RunStatusView").), чтобы увидеть, где именно пользователь нажимает. Тогда есть один NSToolbarItem, который по сути действует как несколько кнопок, и вы имеете полный контроль и можете заставить его вести себя так, как вы хотите.

Я могу предложить вам использовать NSSegmentControl добавлен в NSToolbarItem как на картинке ниже.

введите описание изображения здесьобраз

Вам нужно несколько ярлыков под кнопками (например, "Ответить" и т. Д.). Для достижения этого вы можете установить NSToolbarItem label-свойство и игра с пробелом между словами.

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

Другие вопросы по тегам