1

NSToolbarウィンドウに を追加し、いくつかのアイテムを挿入しました。そのうちの 2 つにはカスタム ビューが含まれています (NSTextFiledラベルと としてNSButton)。これらのアイテムの両方に最大幅と最小幅を設定しましたが、問題なく表示されますが、必要以上に大きく、ラベルや特にボタンが望ましくないスペースで煩わしくなります。

ボタンが大きすぎる

ボタンとその項目の幅を、含まれるテキストに必要な最小値に設定する方法を探しています。

4

1 に答える 1

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
}
于 2015-08-04T09:04:40.017 に答える