保存前提交NSTextField更改

时间:2012-10-16 01:38:22

标签: objective-c macos cocoa nstextfield

我有一个NSDocument应用,我希望每次用户保存时都会NSTextField提交模型的当前更改(例如通过cmd +)。

我不使用绑定,目前更改被推送到-controlTextDidEndEditing:方法中的模型。调用[window makeFirstResponder:nil]会将更改推送到模型,但也会导致控件失去焦点,这实际上并不是一种合理的行为。

谷歌搜索我已经看到有几个人建议使用-commitEditing方法,但它只适用于绑定,我错了吗?

1 个答案:

答案 0 :(得分:0)

您可以从controlTextDidEndEditing:操作中调用已定义的save

-(IBAction)save:(id)sender
{
    [self controlTextDidEndEditing: ...]
}

触发你已编写的相同代码!