我使用的是最新的XCode 6.4, Swift 1.2。我试图以编程方式选择一个NSToolbarItem在我的NSToolbar。我在互联网上搜索了很多,应该有NSToolbar名为setSelectedItemIdentifier的方法,但该方法不存在(不再?)。
有其他方法来完成这个吗?比如:
NSApplication.sharedApplication().sendAction(Selector("click"), to: myNSToolbarItem, from: sender)
但是我不知道我应该用什么来代替"click"。提前感谢!
Neo回复后更新:我希望工具栏在视觉上变成"选中的",这样可以改变它的颜色。我知道如何调用该函数,但这不会改变工具栏项的"选定"状态。所以,如果我可以模拟鼠标点击nstoolbaritem,我猜这将解决我的问题(或替换NSToolbar.setSelectedItemIdentifier)。
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"
你的ToolbarItem与ViewController中的一个函数相连接…你唯一需要做的就是像调用其他函数一样调用这个函数,或者有什么特别的吗?
你能再给我一些代码吗?