我习惯了,当我在Microsoft Word中更改文档时,它会在文件名附近获得*
,应用程序会自动知道我应该保存文档。
我如何在MFC中复制这种行为并通知我的文档类这些更改,以便应用程序自动知道文档需要保存?
通知文档被修改,使用CDocument::SetModified
方法,查询文档是否被修改,使用CDocument::IsModified
方法。对于视图,在更新文档时调用CView::OnUpdate
。
有点晚了,但我不得不做同样的事情。
设置文档的修改标志后,更改标题。这里有一个例子:m_pDoc -> SetModifiedFlag (bChanged);
CString stTitle = m_pDoc->GetTitle();
if (stTitle.Left(2) == _T(" *"))) {
stTitle = stTitle.Left(stTitle.GetLength() - 2);
}
if (bChanged) {
stTitle += _T(" *");
m_pDoc->SetTitle(stTitle);
}
else {
m_pDoc->SetTitle(stTitle);
}