如何保存不另存为
Posted
技术标签:
【中文标题】如何保存不另存为【英文标题】:How to Save not Save As 【发布时间】:2010-02-22 15:05:22 【问题描述】:我正在创建一个富文本框编辑器,需要添加一个保存功能以及另存为。我可以通过使用 savefiledialog 轻松地执行另存为功能,但我不确定没有这个如何保存。有人可以帮忙吗?
【问题讨论】:
【参考方案1】:在某处创建一个字段,例如string filename
。最初将其设置为null
。
打开文档时,将文件名存储在filename
中。
当通过另存为保存文档时,还要将此文件名存储在filename
中。
当调用 Save 时,检查 filename
的值。如果是null
,则调用另存为。如果不是null
,则保存到filename
指定的文件名。
【讨论】:
如果你有一个 Load() 来从文件中填充编辑器,那么还要设置那个“文件名”。 谢谢你我所需要的。只是另一个问题。如果您单击“新建文档”按钮并且文本自上次保存以来已更改,我将如何显示消息框。我知道如何处理消息框等,但不仅限于文档已编辑且未保存时..如果您理解..:-S @Pops:当文件更改时,将UnsavedChanges
bool 设置为 true。保存时将其设置为 false。【参考方案2】:
这通常的工作方式是跟踪用户打开或保存的文件名。
然后,当他们使用保存功能时,只需保存到之前指定的文件名即可。如果没有指定文件,则显示另存为。
【讨论】:
【参考方案3】:“保存”不就是下面的(伪代码)吗?
Save() =
WriteTo(oldfilename)
SaveAs() =
stream = OpenDialog()
oldfilename = stream.filename
Save()
【讨论】:
以上是关于如何保存不另存为的主要内容,如果未能解决你的问题,请参考以下文章
是否可以制作保存按钮(不另存为按钮)以将文档保存在特定路径中?