今天社群的zhouboy问道,我要怎么动态在GRID里面动态增加一列,里面放一个按钮,试了许多方法没有成功。
我远程试了试,果真没有触发成功,于是我尝试用两个方法来完成这个功能。 新建一个表单,如图所示:
里面就一个GRID,一个按钮,数据环境中加载教师表。
将如下代码保存为mycommand.prg
DEFINE CLASS mybutton as CommandButton
PROCEDURE click
MESSAGEBOX("ff2")
ENDPROC
ENDDEFINE
然后在增加按钮中click方法写如下代码
Thisform.grd教师.AddColumn(7)
Thisform.grd教师.column7.NewObject("mybutton","mybutton","mycommand.prg")
Thisform.grd教师.column7.CurrentControl="mybutton"
Thisform.grd教师.column7.mybutton.Caption="点我有惊吓"
Thisform.grd教师.column7.mybutton.visible=.t.
Thisform.grd教师.column7.Sparse=.F.
运行效果如下:
FORM表单增加command1方法
刷新按钮click方法
Thisform.grd教师.AddColumn(7)
Thisform.grd教师.column7.addobject("mybutton","commandbutton")
Thisform.grd教师.column7.CurrentControl="mybutton"
Thisform.grd教师.column7.mybutton.Caption="点我有惊吓"
Thisform.grd教师.column7.mybutton.visible=.t.
Thisform.grd教师.column7.Sparse=.F.
BindEvent(thisform.grd教师.column7.mybutton,"click",thisform,"comm1",0)
运行效果一样
当我把表单发送zhouboy的时候,他看了我的代码,最后在社群中回复,说是缓冲表的问题,导致列没有生效,现问题已经解决,我目前没有复现出来。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有