请教高手:如何用程序方式在已建立的表单中给控件(如文本框)click事件添加代码?在线!

housl 2004-10-18 09:01:24
我已在交互方式建立了一个表单(abc.scx)现在表单中有60多个文本框控件txta1、txta2,...,txta60,交互方式下为每个文本框编写click事件代码比较烦,如何用程序方式批处理在已建立的表单中给控件(如文本框)click事件添加代码?请给试例,谢谢。
...全文
162 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
LAIYANGPJ 2004-10-22
  • 打赏
  • 举报
回复
我觉得清风的方法简单可行自定义类也不麻烦.
itzhiren 2004-10-22
  • 打赏
  • 举报
回复
这么多!也太多了吧,给你提供一个论坛吧:
http://www.meizibbs.3322.org/bbs/get.asp?get=16822
十豆三 2004-10-21
  • 打赏
  • 举报
回复
dfwxj(清风)
的方法比较好理解!!!
dfwxj 2004-10-20
  • 打赏
  • 举报
回复
如果你的事件都相同的话,可以先设计一个文本框,写好CLICK事件,然后拷贝粘贴,这样其他文本框自然会都带上CLICK事件了

如果你的广西框的CLICK事件不同,可以先设计一个文本框,写好CLICK事件:

do tmp with this.name

然后拷贝粘贴,再写一个tmp过程,在这个过程中进行批量处理,
para txtname
do case
case txtname='txta1'
*执行代码
case txtname='txta2'

case txtname='txta3'
.
.
.
case txtname='txta60'

endc
philozz 2004-10-20
  • 打赏
  • 举报
回复
vfp8对面向对象的编程支持得更好。可以使用bindevent()/unbindevent()来添加和移除事件处理。

可以举一个极为简单的例子。form中有一command1,以下动态的绑定了一个事件,随后又及时的移除了它。
1、首先,在form中定义一个自定义事件MyClick
FUNCTION MyClick()
MessageBox("Button Clicked")
UnbindEvents(THIS.command1,"Click",THIS,"MyClick") && 解除绑定
ENDFUNC

2、在form的init()事件中将MyClick绑定到command1中
FUNCTION Init()
BINDEVENT(THIS.command1,"Click",;
THIS,"MyClick")
ENDFUNC

有关资料,请参考:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_foxhelp/html/folrfbindeventfunction.asp
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_foxhelp/html/folrfUNBINDEVENTSFunction.asp


yestoyes 2004-10-18
  • 打赏
  • 举报
回复
这种时候还是用类比较方便
JohnShen 2004-10-18
  • 打赏
  • 举报
回复
如果你的60多个文本框控件行为类似,可以自定义一个文本框类,在里面写代码,然后将你的文本框换成自定义的文本框就可以了。
xclzteb 2004-10-18
  • 打赏
  • 举报
回复
最简单的方法,记它们在单击事件中调用一个过程,然后按需要修改过程文件就可以了,或者使用类也可以修改单击事件代码,不过要烦琐些。

2,748

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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