gpt4 book ai didi

objective-c - Cocoa:改变 cocoa 向用户报告模型验证错误的方式

转载 作者:行者123 更新时间:2023-12-03 17:11:43 25 4
gpt4 key购买 nike

在我的 Objective-C Cocoa 应用程序中,我有一个名为 Group 的模型,其中包含多个属性(如名称、描述、创建日期等),该模型的每个属性都具有符合 KVO 的验证方法。

有一个NSTableView绑定(bind)到NSArrayController并显示用户可以修改的组列表。

现在,如果我选中“组名称”列值绑定(bind)中的“立即验证”复选框,则验证将按预期工作,并且如果用户输入无效的组名称,将显示一个警报框。

我想要做的是抑制警报框并用红色标记相应的表格行。

是否有可能以某种方式改变 Cocoa 通知用户验证错误的方式?

最佳答案

根据 Key-Value Coding Programming Guide :

The validation infrastructure provides a class the opportunity to accept a value, provide an alternate value, or deny the new value for a property and give a reason for the error.

就是这样。不支持开箱即用的其他行为。

但是,实现自定义行为应该不会太难:

你可以例如提供备用值,以防验证失败,并在模型中的某处设置一些自定义标志,从而允许 TableView 相应地指示失败的验证。下次验证该值并通过验证时,您可以重置该标志。

关于objective-c - Cocoa:改变 cocoa 向用户报告模型验证错误的方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22766196/

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