怎么取dw列最后一次修改值
怎么取dw列最后一次修改值:
前提是:数据修改次数不定,数据没有保存也没重新检索
(则直接取Original缓冲区没法取到)
有什么方式 可以做到吗?
[解决办法]
当前显示的不就是最后一次修改的值吗???
如果取的不是当前编辑的列,则直接dw_1.getitem***
如果取得是当前编辑的列,取之前dw_1.accepttexxt(),再dw_1.getitem***
或者 dw_1.gettext()
[解决办法]
这问题。。。。。
是初始值还是?
直接getitemXXXX() 得到的不是最后一次修改的值吗?
[解决办法]
声明实例变量string is_last_data
在dw的itemchanged事件中写:
is_last_data = object.datawindow.data
需要撤销时,直接importstring(is_last_data)
如果只是获取某个单元格本次修改之前的数据,则写:
datastore lds
lds = create datastore
lds.dataobject = dw_1.dataobject
lds.importstring(is_last_data)
lds.getitem***
[解决办法]
如果要实现撤销功能的话,可以考虑用getfullstate() setfullstate()
[解决办法]
原始值 是1 , 打开后 改成 ,9 , 又改成 3 ,又 改成11 这些操作都是在没保存的情况下 ,如果要获取3 确实有点困难 。
如果是你在itemchange中就发现11 不正确 ,想取消 , 你可以试试 undo 这个函数
[解决办法]
楼主的这个问题,我曾经弄过,我当时在datawindow中的事件:itemchanged中直接取被修改前是什么,而且只能是刚修改的时候可以起到作用,你可以对比下,在这个事件中,你不要使用accepttext,然后调用getitemXXX()和事件的参数data对比,这两个值用messagebox提示下,你就知道,两个值是不一样的,一个是修改后的值,一个是修改前的值
[解决办法]
数据窗口本身不支持保存上一次修改的值的功能,建议楼主放弃这个想法,还是自己写代码去保存吧。
[解决办法]
帮顶
[解决办法]
如果是想取上一次的值的话,可以定义一个全局变量,记录一下上一次输入的值,这样 如果要撤销的话,直接读取这个变量的值就可以了。