以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求教,有关控件值变化后产生事件  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=17720)

--  作者:baoxyang
--  发布时间:2012/3/22 11:07:00
--  求教,有关控件值变化后产生事件

ValueChanged

控件的Value属性发生变化后执行。

e参数属性:

Sender:返回触发事件的控件
Form:   返回控件所在的窗口 

 

 

可否实现手工输入时控件的值产生变化后执行此事件,如果是自动赋值的不产生此事件?

请指点!


--  作者:baoxyang
--  发布时间:2012/3/22 11:13:00
--  

TextChanged

控件的Text属性发生变化后执行。
在控件中每输入或删除一个字符,都会触发TextChanged事件。

 

但这个会多次触发事件,希望离开此控件后才触发事件,可否实现?


--  作者:狐狸爸爸
--  发布时间:2012/3/22 11:20:00
--  

这个似乎没有办法的,只能自己变通一下,在enter事件中将当前值赋值给某个变量,在leave事件中判断当前值是否等于变量的值,如果不等于,表示发生了变化,就执行代码。


--  作者:baoxyang
--  发布时间:2012/3/22 11:22:00
--  
哦,这个可行,但这个变量要设置很多,不好操作。有无其它办法?
--  作者:狐狸爸爸
--  发布时间:2012/3/22 11:28:00
--  

用一个字典啊,大概如下:

 

进去的时候:

 

dic(e.Sender.name) = e.sender.value

 

 

离开的的时候:

 

if dic(e.Sender.name) <> e.sender.value Then

end if