我从组合框的下拉列表中选择一个值。NSComboBox 委托触发一个 comboBoxSelectionDidChange: 通知,但是当我检索组合框的 stringValue 时,它是旧的选定值。如何获得更新的值?
我指定了一个数据源,所以itemObjectValueAtIndex:
不objectValueOfSelectedItem
工作。
我从组合框的下拉列表中选择一个值。NSComboBox 委托触发一个 comboBoxSelectionDidChange: 通知,但是当我检索组合框的 stringValue 时,它是旧的选定值。如何获得更新的值?
我指定了一个数据源,所以itemObjectValueAtIndex:
不objectValueOfSelectedItem
工作。
如果您使用的是数据源,则:
NSString *s = [yourDataSource comboBox:comboBox
objectValueForItemAtIndex:[comboBox indexOfSelectedItem]];
如果您的数据源提供字符串,则应该可以工作。否则,将此方法返回的对象转换为字符串。
从这里:
我使用以下方法获得了选定的值:
NSString *strValue = [comboBox itemObjectValueAtIndex:[comboBox indexOfSelectedItem]];