如何判断数据是否被修改
来源:互联网 发布:淘宝欧珀莱全是假的 编辑:程序博客网 时间:2024/05/22 02:08
说明:当用户浏览数据时无意或有意的修改了数据,所以当关闭数据浏览时,需要提示用户是否对所做的修改做保存,一般可以在每个可以被修改的控件中的INTERACTIVECHANGE事件中写代码,当引发这个事件时,将某个变量(如isEdit)设为逻辑.T.,那么当退出时可以通过判断该变量的值来提示操作者是否要保存。因为如果用户没有做修改而再提示的话显得有点多余了,所以这个提示会显得操作更友好。
但是如果对每一个可以编辑的控件的INTERACTIVECHANGE事件都写入代码,显得有点麻烦,即使作为类考虑也不是很好的办法,所以下面的方法供大家参考。
注意:使用此法,你必须用缓冲方式打开表才行。
isNeedToSave=.f.
for gnCount = 1 TO FCOUNT( ) && 循环次数等于字段的数目
if GETFLDSTATE(FIELD(gnCount))>=2 && 显示各字段,具体看GETFLDSTATE()函数
isNeedToSave=.t.
exit && 当有某个字段被修改后,即退出判断
endif
endfor
if isNeedToSave
ans=messagebox(要保存所做的修改吗?,3+32,询问)
do case
case ans=6 && 选择是
=tableupdate(.t.)
case ans=7 && 选择否
=tablerevert(.t.)
case ans=2 && 选择取消
endcase
endif
建议将以上代码写在表单的QUERYUNLOAD事件中。
但是如果对每一个可以编辑的控件的INTERACTIVECHANGE事件都写入代码,显得有点麻烦,即使作为类考虑也不是很好的办法,所以下面的方法供大家参考。
注意:使用此法,你必须用缓冲方式打开表才行。
isNeedToSave=.f.
for gnCount = 1 TO FCOUNT( ) && 循环次数等于字段的数目
if GETFLDSTATE(FIELD(gnCount))>=2 && 显示各字段,具体看GETFLDSTATE()函数
isNeedToSave=.t.
exit && 当有某个字段被修改后,即退出判断
endif
endfor
if isNeedToSave
ans=messagebox(要保存所做的修改吗?,3+32,询问)
do case
case ans=6 && 选择是
=tableupdate(.t.)
case ans=7 && 选择否
=tablerevert(.t.)
case ans=2 && 选择取消
endcase
endif
建议将以上代码写在表单的QUERYUNLOAD事件中。
- 如何判断数据是否被修改
- vb.net 如何判断文件是否在外部被修改?
- 判断数据集 是否修改(DataSet)
- 如何判断UltraGrid中是否选中数据
- 如何判断UltraGrid中是否选中数据
- 如何判断dataset中是否包含数据
- 如何判断数据中某张表是否存在
- 如何判断hibernate 存储数据是否成功
- 如何判断数据是否有重复数字
- 大表格,多Form元素的提交 判断表单数据是否有被修改过
- 判断从Web Form接收到的数据是否被修改
- EXT.NET保存前判断数据是否修改
- mysql 判断表数据是否存在,然后修改
- 判断一个表单是否被修改过
- VFP中如何判断GRID单元格的值是否被修改
- 判断网页是否修改
- 数据运营-如何判断是否要进行数据驱动创新?
- JS中如何判断JSON数据是否存在某字段
- 项目打包时自定义安装属性,如数据库名等
- 使用MD5算法加密VFP数据
- 更深入一点理解switch语句及c/c++对const的处理
- VFP进度条类
- c#中异步基于消息通信的完成端口的TCP/IP协议的组件实现(源代码)
- 如何判断数据是否被修改
- RFC102 主机-主机 协议故障清除委员会的说明
- RFC103 中断键的执行
- RFC104 连接 191
- RFC105 通过 UCSB 进行远程登录和远程输出返回的网络说明书
- RFC106 用户/服务器 站点协议的网络主机问卷
- 如何制作程序启动时与关于时的版权画面
- RFC107 主机-主机 协议故障清除委员会的说明
- RFC108 1971年2月17-19日在 Urbana 举行的 NWG 会议的人员列表