主题:GRID 某列控件问题
SIMONLIANG
[专家分:420] 发布于 2010-03-19 17:54:00
通过 GRID 生成器可以指定某列的控件类型如 CHECK.
请教: 是否可以在表单通过用代码指定控件类型.
例如我想在 GRID 的第二列 COLUMN2 的控件类型为 CHECK. 请各位老师指教.
谢谢!
回复列表 (共6个回复)
沙发
北京惬意 [专家分:1330] 发布于 2010-03-19 19:12:00
表单.GRID1.COLUMN3.CURRENTCONTROL="CHECK1"
表单.GRID1.COLUMN3.CURRENTCONTROL="TEXT1"
如果是加上去就用“CHECK1”手动完成即可,如果运行时需要与“TEXT1”调换用上述代码。
但那个"CHECK1"也要手动加上去,这里描述有点复杂,以前有一帖如果能找到给你顶上来供参考,你也可以到我的回帖里去找。
板凳
zxl931 [专家分:3420] 发布于 2010-03-19 20:36:00
thisform.Grid1.column1.AddObject("check1","checkbox")
thisform.Grid1.column1.CurrentControl="check1"
thisform.Grid1.column1.sparse=.F.
3 楼
SIMONLIANG [专家分:420] 发布于 2010-03-20 08:32:00
谢谢两位老师.
check1调用的数据为逻辑型数据,按zx1931老师的办法,出现check1 value 数据类型不匹配的错误.贴上一段代码,帮忙看看错在哪里:
*数据表: AAA
*字段1: 姓名 - 字符类型
*字段2: 选择 - 逻辑型
THISFORM.GRID1.COLUMNCOUNT=2
THISFORM.GRID1.RecordSource='AAA'
THISFORM.GRID1.COLUMN1.ControlSource='AAA.姓名'
thisform.GRID1.column2.AddObject("CHECK1","checkbox") && 此句出错,数据类型不匹配
thisform.GRID1.column2.CurrentControl="check1"
thisform.GRID1.column2.sparse=.F.
THISFORM.GRID1.COLUMN2.ControlSource='AAA.选择'
请各位老师指教.
4 楼
SIMONLIANG [专家分:420] 发布于 2010-03-20 08:55:00
修改如下后,没有错误提示,但 CHECK1 控件却没有动作
THISFORM.GRID1.COLUMNCOUNT=2
THISFORM.GRID1.RecordSource='AAA'
THISFORM.GRID1.COLUMN1.ControlSource='AAA.姓名'
THISFORM.GRID1.COLUMN2.ControlSource='AAA.选择'
thisform.GRID1.column2.AddObject("CHECK1","checkbox")
thisform.GRID1.column2.CurrentControl="check1"
thisform.GRID1.column2.sparse=.F.
5 楼
ttyy123 [专家分:30] 发布于 2010-04-02 15:57:00
再加上这句就有动作了:
thisform.GRID1.column2.check1.visible=.t.
6 楼
SIMONLIANG [专家分:420] 发布于 2010-04-09 22:53:00
谢谢 5 楼
搞定了.
我来回复