gpt4 book ai didi

cocoa 绑定(bind) : Bind NSComboBox selection to a field in NSObjectController

转载 作者:行者123 更新时间:2023-12-03 16:39:42 28 4
gpt4 key购买 nike

在我的应用程序中,我有一个 NSObjectController 绑定(bind)到用户界面上的所有控件。到目前为止效果很好。我遇到的唯一问题是将 NSComboBox 的选择绑定(bind)到同一个 ObjectController。据我今天发现,ComboBox 的值始终是一个字符串,因此 OBjectController 类中的字段也是一个 NSString。听起来对我来说很容易,但不起作用。

我总是得到“...类与键的键值编码不兼容...

ComboBox 本身中的项目来自另一个 Controller ,即 NSArrayController。但这部分工作得很好。数组中的所有项目都是组合框中的项目。我遇到的问题是将选择放入 ObjectController。

最佳答案

这只是说 NSObjectController 使用的任何数据模型对象都没有适合该值的关键方法。

根据 Cocoa Bindings Reference 文档,value 绑定(bind)应该设置为 NSObjectController 中的一个键,该键对应于其模型中的键值编码兼容键。

示例:

NSObjectController模式为Class,类名为foo。然后将 foo 的 comboSelection 键绑定(bind)到 NSComboBox 的 value。异常(exception)情况是 Foo 类没有名为 comboSelection 的方法:

- (NSString*)comboSelection;
- (void)setComboSelection:(NSString*)inSelection;

如果使用 NSMutableDictionary 作为 NSObjectController 的类,则要容易得多,因为字典可以保存任意键。

如果您使用 CoreData (mode = Entity),则您的 CoreData 实体必须包含适当的属性。

关于 cocoa 绑定(bind) : Bind NSComboBox selection to a field in NSObjectController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1643849/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com