我在窗口中添加了NSToolbar
并插入了一些项目。其中两个包含自定义视图(NSTextFiled
作为标签和NSButton
)。我已经为这两个项目设置了最大和最小宽度,它们显示得很好,但是它们比需要的要大得多,使得标签,特别是按钮非常大而且有不希望的空间。
我正在寻找一种方法来将按钮及其项目的宽度设置为其包含的文本所需的最小值。
答案 0 :(得分:1)
在玩完之后,我还为NSToolbarItem
添加了一个插座,并使用以下功能更改了文字:
@IBOutlet weak var manageSessionItem: NSToolbarItem!
@IBOutlet weak var manageSession: NSButton!
func setManageSessionTitle(title: String) {
let s: NSString = title
let attr=[NSFontAttributeName: manageSession.font!]
//Add width to compensate for button graphics
let w=s.sizeWithAttributes(attr).width + 20
manageSession.frame.size.width = w
manageSessionItem.minSize.width = w
manageSessionItem.maxSize.width = w
manageSession.title = title
}