注册 登录
编程论坛 VFP论坛

求助,怎么通过grid的事件控制按钮。。。

yuantao100 发布于 2020-06-30 18:37, 3326 次点击
只有本站会员才能查看附件,请 登录


我想点grid1时,command1变成灰的,
点grid2时,command2变成灰的。。。。。

我试了grid1的activatecell事件、setfocus事件,click事件,。。。。。都没有效果。。。
我该怎么弄呢?
14 回复
#2
zhken2020-06-30 18:43
必须在 thisform.grid1.column1.text1.click 事件写
#3
yuantao1002020-06-30 18:50
我在程序里有设置columncount=4
那是不是每个列的text1里面都要写上:

另外,在表单页面里面没有这个对象啊。。
#4
zhken2020-06-30 19:04
只有本站会员才能查看附件,请 登录
,将-1改成表的字段数,就出来了,然后在你需要的一列设。
#5
sdta2020-06-30 19:08
表格控件的 AfterRowColChange 事件中
写入相应的代码
#6
yuantao1002020-06-30 19:19
以下是引用zhken在2020-6-30 19:04:22的发言:

,将-1改成表的字段数,就出来了,然后在你需要的一列设。


我是在运行中,才用columncount设置列数,因为列数不固定多,要先看获取的数据。
愁死我了。。。
#7
yuantao1002020-06-30 19:20
以下是引用sdta在2020-6-30 19:08:14的发言:

表格控件的 AfterRowColChange 事件中
写入相应的代码


可是这个AfterRowColChange中,我还是没办法给新的对像的事件写代码啊
比如thisform.grid1.column1.text1的click事件,
我是不是需要得找到这个控件才行。。。。不然这个click写到哪儿呢?。。
#8
sdta2020-06-30 20:00
换VFP9吧

[此贴子已经被作者于2020-6-30 20:02编辑过]

#9
吹水佬2020-06-30 20:03
如果GRID只做显示用(不编辑数据),可以在GRID的click事件中处理

CREATE CURSOR tt (f1 I, f2 I)
FOR i=1 TO 100
    INSERT INTO tt VALUES (i, i*2)
ENDFOR
GO TOP
of = CREATEOBJECT("form1")
of.show(1)
RETURN

DEFINE CLASS form1 As Form
    ADD OBJECT cmd as commandbutton WITH left=10,top=10
    ADD OBJECT Grid1 as Grid WITH left=10,top=30,AllowCellSelection=.F.
    PROCEDURE Grid1.click
        thisform.cmd.enabled = !thisform.cmd.enabled
    ENDPROC
ENDDEFINE

[此贴子已经被作者于2020-6-30 21:13编辑过]

#10
zhken2020-06-30 23:28
试试这个:表单运行时用BINDEVENT()来绑定事件,属性或方法从VFP自己的对象到其它VFP对象  ,可以用编程来绑定表格中每一列内含的TEXT文本框的click事件,适合不确定有多少列的情况。
#11
bccn2012032020-07-01 06:07
楼主用的是VFP6
#12
bccn2012032020-07-01 06:27
楼主是一个执着的人,试下大家告诉你的方法,只能会让你学到更多的知识。
难道试下就能让你有身孕吗
#13
yuantao1002020-07-01 09:03
以下是引用bccn201203在2020-7-1 06:27:01的发言:

楼主是一个执着的人,试下大家告诉你的方法,只能会让你学到更多的知识。
难道试下就能让你有身孕吗

嗯,是VF6,我一直在试啊,大家都是从初学者开始的,
别嘲笑我啊!。。。。。。
#14
zhken2020-07-01 12:25
建议楼主立马改用VFP9,功能强太多,等你上手了就会发现VFP6有许多功能不能用,vfp9在本论坛有下载
#15
yuantao1002020-07-01 13:03
以下是引用zhken在2020-7-1 12:25:18的发言:

建议楼主立马改用VFP9,功能强太多,等你上手了就会发现VFP6有许多功能不能用,vfp9在本论坛有下载

好的,我试试~
谢谢啦!
1