2010-02-22 57 views
1

我正在創建一個richtextbox編輯器,並且需要將保存功能以及另存爲。我可以很容易地使用savefiledialog做一個保存功能,但我不知道如何保存沒有這個。誰能幫忙?如何保存而不保存爲

回答

7

在某處創建字段,例如string filename。最初將其設置爲null

打開文檔時,將文件名存儲在filename中。

當通過另存爲保存文檔時,還將此文件名存儲在filename中。

當調用Save時,檢查值filename。如果是null,請調用另存爲。如果不是null,請保存至filename中指定的文件名。

+0

如果你有一個Load()來從文件中填充編輯器,那麼還要設置'filename'。 – 2010-02-22 15:53:33

+0

正是我所需要的。只是另一個問題,但。如果您點擊「新建文檔」按鈕並且文本自上次保存後發生了更改,我將如何製作消息框顯示。我知道如何做消息框等,但不是隻有當文檔已被編輯,而不是保存..如果你明白..: - S – Pops 2010-02-22 16:09:24

+0

@Pops:當文件被改變,然後設置一個'UnsavedChanges'布爾到真正。保存時將其設置爲false。 – 2010-02-22 16:48:03

5

這通常工作的方式是跟蹤用戶打開或保存的文件名。

然後,當他們使用保存功能時,只需保存到先前指定的文件名即可。如果沒有指定文件,則顯示另存爲。

2

是不是「簡單地保存」下面的代碼(僞代碼)?

Save() = 
    WriteTo(oldfilename) 

SaveAs() = 
    stream = OpenDialog() 
    oldfilename = stream.filename 
    Save() 
相關問題