如何在基于文档的应用程序中单击关闭时设置保存通知

时间:2012-11-19 04:24:06

标签: objective-c xcode cocoa nsdocument

我正在做一个简单的基于文档的应用程序。我已经实现了readFromData和dataOfType函数。创建newDocument和saveDocument正在运行。但是,问题是如何在用户单击“关闭”时设置保存通知。我在我的应用程序中添加了一些数据,当我点击关闭时,它只是直接关闭。没有保存通知。我认为应该在基于文档的应用程序中使用它。

我试过windowWillClose:(NSNotification *)a, 有一个警报表。警报到来,窗口立即关闭。

我缺少什么?

2 个答案:

答案 0 :(得分:2)

使用NSDocument -updateChangeCount:方法跟踪文档中的更改。 喜欢:

// add some data to theDocument
[theDocument updateChangeCount:NSChangeDone];

但是,如果您使用默认文档撤消管理器,那么只需阅读文档,您可能不需要自己更新更改计数。

干杯

答案 1 :(得分:1)

实施这种逻辑,你就会完成。

- (BOOL)isDocumentEdited{
        if (somethingGotChanged){
            return YES;
        }
        else{
            return NO;
        }
        //or return somethingGotChanged; //*** make somethingGotChanged BOOL
    }

这里,somethingGotChanged是一个标志,您必须根据您对数据进行编辑来设置。