关于clicked 和 doubleclicked事件紧急求救,一有答案就结帖。。。。。。

Rocklet_me 2005-04-20 03:29:07
各位大虾,小弟有一事不明,禀承如下:

在DW里做CHECKBOX,并且在clicked事件里对该选中行进行数据统计,并赋值给其他变量。

现在问题在于,当连续单击两下是,PB先自己做了一次CLICKED事件,CHECKBOX变量改变,赋值给其他变量。然后PB又发现第二次单击,于是把它纠正为一次DOUBLECLICKED事件,这样以来,PB自动把原先改变的CHECKBOX值还原,但是我赋给其他变量的值却无法恢复了。

这应该是PB的clicked 和 doubleclicked事件执行机制问题。我想过多种解决方法,比如,在DOUBLECLICKED 事件里做一次恢复变量的补操作,单结果是不够严密。

希望有遇到过这方面情况的兄弟给支一招。。。。。

一小时内要解决掉,不然会死的很难看 :(
...全文
338 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Rocklet_me 2005-04-20
  • 打赏
  • 举报
回复
就是CLICK和DOUBLECLICK混不清呢。。。

谢谢各位,刚才试了一下yhtaa(无名) 的方法,似乎可行。。。正在加速测试中。。马上要交了。等下就不再上来了,多谢多谢,结。。。

balloonman2002 2005-04-20
  • 打赏
  • 举报
回复
那就不要通过DW的getrow()函数来记录当前行号,在CLICK事件中用一个instance变量记录刚才操作的行号,这样即可保证补救的脚本中能正确取到刚才操作的行号
Rocklet_me 2005-04-20
  • 打赏
  • 举报
回复
谢谢楼上的,呢个我也试过,好象有点别扭。
quxinyu 2005-04-20
  • 打赏
  • 举报
回复
我以前是用控件的Enabled属性+补救代码完成的,痛苦啊!
quxinyu 2005-04-20
  • 打赏
  • 举报
回复
厉害啊!这个问题已经困扰我3年拉!
Rocklet_me 2005-04-20
  • 打赏
  • 举报
回复
对的,是写在CLICK中,但是,可能我之前说的不是非常明白。

我在CLICK事件中写了脚本,但CHECK BOX的值变化并不是我写的,是PB自己默认的。

所以,当第二次快速单击的时候,PB明白了这是一次单击,所以,它把自己之前 做过的CHECKBOX值的变化还原了,也就是显示为没钩过。但实际上,CLIECK中我自己手写的脚本已经执行过了,并且没有恢复。

我想过办法,在DOUBLECLICKED事件中做补救的手工恢复脚本,但是不严密,因为当我测试的很快速上下行移动的时候,就无法取得正确的行号,所以数据不能十分严密。

herrick 2005-04-20
  • 打赏
  • 举报
回复
难道你的check box的dublick click事件中还有写代码?
这样好像不对啊?!
不管选中或是取消,都是写在click事件中的啊!
hygougou 2005-04-20
  • 打赏
  • 举报
回复
单击选中,双击取消嘛
yhtaa 2005-04-20
  • 打赏
  • 举报
回复
建议你对选中数据进行统计时,不要写在clicked事件里面,放在itemchanged事件里面统计数据就可以解决这个问题了
balloonman2002 2005-04-20
  • 打赏
  • 举报
回复
执行doubleclicked事件前肯定会先触发clicked事件,你想只触发doubleclicked事件而不触发clicked事件比较难,考虑换些思路

1,079

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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