3

最新の XCode 6.4 と Swift 1.2 を使用しています。NSToolbar で NSToolbarItem をプログラムで選択しようとしています。私はインターネットでたくさん検索しましたが、setSelectedItemIdentifierと呼ばれる NSToolbar のメソッドがあるはずですが、そのメソッドは存在しません(もう?)。

これを達成する別の方法はありますか?おそらく次のようなものです:

NSApplication.sharedApplication().sendAction(Selector("click"), to: myNSToolbarItem, from: sender)

しかし、「クリック」の代わりに何を使用すればよいかわかりません。前もって感謝します!

Neo の返信後の更新: ツールバー項目を視覚的に「選択」して、色を変更したいと考えています。関数を呼び出す方法は知っていますが、ツールバー項目の「選択された」状態は変わりません。したがって、nstoolbaritem でのマウス クリックをシミュレートできれば、問題は解決すると思います (または NSToolbar.setSelectedItemIdentifier の置き換え)。

4

2 に答える 2

1

selectedItemIdentifierの代わりに使用できる NSToolbar の設定可能なプロパティになりましたsetSelectedItemIdentifier。NSToolbarItem が選択可能であること (Interface Builder を使用している場合、これはデフォルトで無効になっています)、およびツールバー項目の識別子を設定したこと (または NSToolbarItem の itemIdentifier を使用したこと) を確認してください。

次に、selectedItemIdentifierを有効なツールバー項目識別子に設定するだけです。ストーリーボードなしで実装する場合:

//Create the toolbar item and set an identifier
let demoToolBarItem = NSToolbarItem(itemIdentifier: "account")

//Set the NSToolbarDelegate
preferencesToolbar.delegate = self

//Implement toolbarSelectableItemIdentifiers(NSToolbar)
func toolbarSelectableItemIdentifiers(NSToolbar) -> [String]{
  return ["account"]
}

//Set the selected item on the toolbar
preferencesToolbar.selectedItemIdentifier = "account"
于 2017-02-28T08:11:32.817 に答える
0

あなたの ToolbarItem は ViewController の func に接続されています...あなたがする必要があるのは、他の func を呼び出すようにその func を呼び出すことだけですか、それとも何か特別なことはありますか?

もう少しコードを教えていただけますか?

于 2015-08-03T17:31:09.410 に答える