以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- 关于显示列的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71071)
|
-- 作者:hongyefor
-- 发布时间:2015/7/4 11:38:00
-- 关于显示列的问题
此主题相关图片如下:复选框.jpg
当在复选框1上打勾时显示第三列,取消打勾是隐藏第三列,请问这个代码怎么写啊
|
-- 作者:blsu33
-- 发布时间:2015/7/4 12:23:00
--
Dim ck1 As WinForm.CheckBox = e.Form.Controls("CheckBox1") Dim tb As Table=Tables("***") If ck1.Checked Then tb.Cols("第三列").Visible=True Else tb.Cols("第三列").Visible=False End If
|
-- 作者:y2287958
-- 发布时间:2015/7/4 15:18:00
--
Tables("***").Cols("第三列").Visible=e.Form.Controls("CheckBox1").Checked
|
-- 作者:hongyefor
-- 发布时间:2015/7/5 19:52:00
--
Dim ck1 As WinForm.CheckBox = e.Form.Controls("CheckBox1") Dim tb As Table=Tables("订单主表.订单数量明细") If ck1.Checked Then tb.Cols("T80").Visible=True Else tb.Cols("T80").Visible=False End If
这是关联表的显示列代码
比如说,订单主表和订数量单明细关联,关联列为“合同号”列,在窗口里有一个CheckBox,当我点击时只针对该合同号的指定列(比如说“T80”)起作用,点击别的合同号不起作用(比如说别的合同号是隐藏“T90”列)
请问这样可以吗?
|
-- 作者:czy
-- 发布时间:2015/7/5 20:11:00
--
你可以将该CheckBox控件的CheckedChanged事件代码设成:Dim r As Row = Tables("订单主表").Current If Tables("订单主表.订单数量明细").Cols.Contains(r("合同号")) Then Tables("订单主表.订单数量明细").Cols(r("合同号")).Visible = e.Sender.Checked End If
[此贴子已经被作者于2015/7/5 20:13:25编辑过]
|
-- 作者:hongyefor
-- 发布时间:2015/7/5 20:21:00
--
Dim ck1 As WinForm.CheckBox = e.Form.Controls("CheckBox1") Dim tb As Table=Tables("订单主表.订单数量明细") If ck1.Checked Then tb.Cols("T80").Visible=True Else tb.Cols("T80").Visible=False End If
那这个代码放哪?
|
-- 作者:hongyefor
-- 发布时间:2015/7/5 20:27:00
--
感觉不像我要的
最好的是,比如说有两个订单分别为“1001101”,“1001102”各自无关,“1001101”隐藏的是T80列,“1001102”隐藏的是T90列,当点击“1001101”其隐藏的是“T80“的列,如果点击"1001102”订单时”T80“自动显示”T90“隐藏,
|
-- 作者:czy
-- 发布时间:2015/7/5 20:29:00
--
如果关联明细表中真有这样一个标识列,完全可以根据该列的内容来隐藏或显示所需的列,那么楼上的代码可以不用了。
|
-- 作者:hongyefor
-- 发布时间:2015/7/5 20:35:00
--
不会啊
|
-- 作者:czy
-- 发布时间:2015/7/5 20:40:00
--
发文件上来。
|