Как вы получаете вставки по умолчанию NSViews и NSControls? - PullRequest
2 голосов
/ 11 апреля 2011

Я пишу некоторый пользовательский код компоновки для выравнивания некоторых NSView с.Я перебираю все представления и устанавливаю для их frame.origin.x одинаковое значение (выравнивание по левому краю), но представления не выглядят так, как будто выровнены правильно.Я посмотрел на выровненные по левому краю представления в Интерфейсном Разработчике, и у каждого отдельного класса представления есть различное значение frame.origin.x.

Например, чтобы выровнять по левому краю NSPopUpButton с NSTextField, рамкойЗначение .origin.x для NSPopUpButton должно быть на 3 пикселя меньше, чем для NSTextField.

. Я нашел метод ibLayoutInset в InterfaceBuilderKit.framework, который, кажется, мне нужен, нони одно из представлений AppKit не реализует метод.

Кто-нибудь знает, как получить эти значения вставки программно?

1 Ответ

0 голосов
/ 12 апреля 2011

Кроме измерения себя и построения собственной таблицы смещений, вы не можете. Это довольно раздражает, и, вероятно, лучше всего подать отчет об ошибке здесь: http://bugreport.apple.com

...