填充NSComboBox从数据源
问题描述:
此代码编译行,但在组合框(cbxColors)是空的 - 不从数据源(数组:COLORS_OF)填充。在IB中检入Uses Data Source
。填充NSComboBox从数据源
func numberOfItemsInComboBox()
返回正确的结果:5
func comboBox()
没有做的工作。
我错过了什么?
编辑:现在的工作。
import Cocoa
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate, NSComboBoxDelegate, NSComboBoxDataSource {
@IBOutlet weak var window: NSWindow!
func applicationDidFinishLaunching(aNotification: NSNotification) {
cbxColors.dataSource = self
numberOfItemsInComboBoxCell(cbxColors)
comboBoxCell(cbxColors, objectValueForItemAtIndex: 0)
}
func applicationWillTerminate(aNotification: NSNotification) {
}
@IBOutlet weak var cbxColors: NSComboBox!
@IBOutlet weak var txtResult: NSTextField!
@IBAction func actColors(sender: NSComboBox) {
// display User selected item in 'txtResult'
}
func numberOfItemsInComboBoxCell(aComboBox: NSComboBox) -> Int {
return(COLORS_OF.count)
}
func comboBoxCell(aComboBox: NSComboBox, objectValueForItemAtIndex index: Int) -> AnyObject {
return(COLORS_OF[index])
}
let COLORS_OF = [ "Blue", "Green", "Purple", "Red", "Yellow" ]
}
你是什么意思“不做它的工作”?你的“cbxColors”IBoutlet是否正确挂钩而不是零?为什么你有“NSTextFieldCell”IBoutlet而不是“NSTextField”? –
@ xhruso00“cbxColors”IBOutlet已正确挂接到IB中的ComboBox。我改“NSTextFieldCell!的建议。我说:‘没有做的工作’,因为是没有得到填充组合框。 –