在vfp中,我們只要使用“表緩沖”,就可以將用戶改得“面目全非”的表記錄恢復(fù)至該表打開(kāi)時(shí)的樣子。詳細(xì)用法見(jiàn)下: 設(shè)有一個(gè)名為liushu.dbf的表,將其添加到表單的數(shù)據(jù)環(huán)境中,并把buffermodeoverride設(shè)置為5(開(kāi)放式表緩沖,可用命令實(shí)現(xiàn):=CURSORSETPROP('Buffering',5,'liushu')&&啟用表緩沖),然后在表單中添加一個(gè)grid控件,name=“grid1”,在表單的load事件中輸入以下代碼: thisform.grid1.recordsource="liushu" &&將表的名稱賦值給grid1的數(shù)據(jù)源 set multilocks on && 對(duì)于表緩沖必須為 on 在“關(guān)閉”按鈕的click事件中輸入以下代碼: select liushu &&選擇liushu表 if getnextmodified(0) > 0 &&判斷是否有記錄被修改 lnchoice = messagebox("數(shù)據(jù)被修改,是否保存當(dāng)前修改?", 3+32, "保存") if lnchoice = 2 && 取消 return endif if lnchoice = 6 && 確定保存 =tableupdate(.t.) &&保存修改 else =tablerevert(.t.) &&放棄修改 endif endif rele thisform |
|