打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
怎样让表格控件里每一列的text1的dblclick事件执行相同的代码段???
主题:怎样让表格控件里每一列的text1的dblclick事件执行相同的代码段???
作者:jinlonggao      发表时间:2007-3-6 17:01:00
楼主
我有一个表单,其中有一表格,可以显示任何一个在该表单运行之前已经打开的数据表,现在我想在每个单元格中双击鼠标时执行同样一段代码.我又不想给每一列的TEXT1控件的dblclick事件都写上该代码,因为,此表格的列数,在显示不同的数据表时可能不同.请问有没有办法在运行时自动让每列的TEXT1的DBLCLICK事件执行同样一段代码.
这个问题有一定难度,敬请高手不吝赐教!
作者:djGong2002      发表时间:2007-3-6 17:58:00
第1楼
设置表格的AllowCellSelection为.F.,然后直接在表格的DblClick事件中写代码
作者:jinlonggao      发表时间:2007-3-6 19:03:00
第2楼
djGong2002的办法我试过了,可以,但是当:
表格的AllowCellSelection为.f.后,表格就不能编辑,也不能选择其中某个单元格的值,即便达到了目的,又有什么意义呢?
我的要求是既要能选择每个单元格,又要能单击或双击单元格时运行统一的代码段.
先谢谢 djGong
请专家们继续支持我!!
作者:jinlonggao      发表时间:2007-3-6 19:35:00
第3楼
既然grid的setall()函数可以给表格中所有的某个属性赋同样的值,难道就没有一个什么函数能让表格控件中的所有text1或header1执行某段同样的代码吗?
是我们没发现呢? 还是grid控件确实没有这样的功能呢?
希望专家们赶快想办法?
作者:moz      发表时间:2007-3-6 21:09:00
第4楼
请老金原谅,
实在是没有精力去试什么了,
不过我瞎翻了一下:
.readmethod  读取方法程序文本
.writemethod 写入方法程序文本
还有,我看到 GRID 的双击,相当于文本框的双击 -- 全选
还有,记得以前见到过有写鼠标事件的,不知道能不能从鼠标入手.
如果是我,走头无路的时候,我只能做一个隐藏的按钮,
在每一个要调用事件的地方加上去  .click
剩下的事情就在余生八十年的岁月里去寻找替代方法.
作者:moz      发表时间:2007-3-6 22:11:00
第5楼
刚又想起一个运行时的集合叫做 .Controls
不知道能不能用得上。
作者:zxl931      发表时间:2007-3-6 23:43:00
第6楼
只要一行代码可以解决此问题,无论表格的数据源如何变化,我的方法如下:
假如表单上有一个grid1,在它的AfterRowColChange事件中加入以下一行代码:
LPARAMETERS nColIndex
BINDEVENT(thisform.grid1.columns(nColIndex).text1,"dblclick",thisform,"msg")
说明:本方法绑定“text1"的"dblclick"事件到表单的自定义方法“msg”
如果“msg”中的代码为“messagebox("123")”,当双击表格时就会执行自定义方法“thisform.msg”并弹出提示。
作者:moz      发表时间:2007-3-7 7:06:00
第7楼
利害.
作者:jinlonggao      发表时间:2007-3-7 14:53:00
第8楼
还是老乡历害,遗憾的是,bindevent()函数只有VFP9才有(VFP7,8我没用过,不知道有无,但VFP6肯定没有).我的系统是VFP6做的,看来要用这个函数就得升级系统了.
moz先生的writemethod也是VFP6中没有的(vfp9里有).
谢谢老乡康佳小雷.
谢谢MOZ先生.
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
vue.js同一元素实现单击click和双击事件dblclick,执行不同功能
vb窗体所有事件(1)
jquery 区分鼠标单击双击事件插件 | 梦三秋
深入理解DOM事件类型系列第一篇——鼠标事件
Duilib扩展《01》— 双击、右键消息扩展
VFP的表格透析 [IT行内话]
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服