谁知道怎样在数据窗口对象中取原始值?

nccxl 2004-07-14 04:26:12
我需要实现的是通过计算列动态的去某一字段的原始值(编辑之前的值),然后和输入的值(编辑输入的值)进行比较,把结果显示出来。

需要在数据窗口对象中实现(可能并不一定要用计算列),不是在数据窗口的控件里写代码。
...全文
126 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
nccxl 2004-07-14
  • 打赏
  • 举报
回复
哈哈,是啊。多谢 cyactiveboy((冷酷有情)) 的主意。这是个好方法。

也谢谢楼上的各位。
分不多,算是在下的一点意思。
cyactiveboy 2004-07-14
  • 打赏
  • 举报
回复
那你就在数据窗口中放两个相同的字段好了呀.一个用于显示,不能更改,一个可以用来改动.
liubocy 2004-07-14
  • 打赏
  • 举报
回复
在itemfocuschanged:
申明两个实例变量ii_row,is_colname

if ii_row > 0 then
sle_olditem.text = "old row:" + string(ii_row) + "old column:" + is_colname
end if

sle_newitem.text = "new row:" + string(row) + "old column:" + dwo.name

ii_row = row
is_colname = dwo.name
这样能得到改动前和改动后的值
试哈看
suzh1133 2004-07-14
  • 打赏
  • 举报
回复
在declare中新定义一个变量
string is_str

在窗口的itemchanged事件中写

if dwo.name='?' then ///////?表示你需要修改的字段的名字
is_str=data //////data是itemchanged的参数,表示修改后的值
end if
将修改后的值赋给变量,我们就可以在别的事件中直接使用了,不itemchanged事件有点不好,就是修改后焦点必须失去才能触发
nccxl 2004-07-14
  • 打赏
  • 举报
回复
大个比方吧。我现在有字段“a”,我建了一个计算列用来显示“a”原来的值(修改前,已经在数据库中)减去“a”后来的值(修改后,刚输入进去的)。
也就是所,先取一个数据库中有的“a”的值,再取一个更改后的“a”的值(更改后不管更改多少次,就取最后更改的)。
在下知道取数据库的内容用外部函数能够实现,不过我的问题比较特殊,所以一定要在数据窗口对象中取出。
谢谢回答的朋友,再帮我想想办法吧。
jxc 2004-07-14
  • 打赏
  • 举报
回复
注意,之前不能调用 accepttext(),否则就得不到原始值了。
nccxl 2004-07-14
  • 打赏
  • 举报
回复
我可能没说清楚,我所说的“原始值”是值已经存库的字段内容,不是初始值。而且我需要在数窗对象中取得。
jxc 2004-07-14
  • 打赏
  • 举报
回复
getitemstring(ll_row,ls_col,primary!,true)
amekoxiao 2004-07-14
  • 打赏
  • 举报
回复
得到
dw.object.列名.Initial =
赋值
dw_1.Modify("列名.Initial=''")

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧