以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 一处不完美的地方 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=24361) |
-- 作者:Fotable -- 发布时间:2012/10/11 16:45:00 -- 一处不完美的地方 帮助中提到: GetColVisibleWidth 返回一个字符串,包括显示的列及列宽信息,用符号“|”隔开。例如:日期|90|产品|120|客户|120|数量|60 示例 Dim cvs As String
= Tables("订单").GetColVisibleWidth() 执行上述代码后,关联表Tables("产品.订单")的显示列、列位置、列宽将和主表Tables("订单")完全一致。
但实际操作中,发现并不完全一致。为什么呢? 例如:我用 getcolvisiblewidth 会得到这样的字符串 “编号|43|姓名|61|性别|26|生日|71|身份证|0|偏好|0|照片|0|备注|0|单位_职务|47|联系_手机|78|联系_手机2|0|联系_QQ|71|联系_Email|0|单位_名称|56|单位_固话|0|单位_门号|0|家庭_电话|43|家庭_地址|96” 然后 我用setcolvisiblewidth(cvs) 发现 这些width = 0的列 并没有隐藏 而是显示出来了一点点。
此主题相关图片如下:2012-10-11_164515.jpg [此贴子已经被作者于2012-10-11 17:06:59编辑过]
|
-- 作者:程兴刚 -- 发布时间:2012/10/11 17:00:00 -- 1、应该由贺老师改过来,setcolvisiblewidth设置列之时将列宽为0的列直接隐藏; 2、暂时可以用循环语句自己写一个 |
-- 作者:Fotable -- 发布时间:2012/10/11 17:08:00 -- 2.自己写 SetColVisibleWidth函数吗? 另外我觉得 贺老师应该改的是 GetColVisibleWidth 把为零的列 不需要列出来。 [此贴子已经被作者于2012-10-11 17:10:06编辑过]
|
-- 作者:yinyb36 -- 发布时间:2012/10/11 17:08:00 -- 你用getcolvisiblewidth得到的列宽为0,说明你并没有隐藏身份证|0|偏好|0|照片|0|备注|0|联系_手机2|0|联系_Email|0|单位_固话|0这些列,如需隐藏,点击数据表->其他->取消隐藏列...,将需要隐藏的列的前面的勾去掉即可。
|
-- 作者:yinyb36 -- 发布时间:2012/10/11 17:11:00 -- 补充说明,列宽设为-1时,为初始宽度,即新增列时的宽度。 |
-- 作者:Fotable -- 发布时间:2012/10/11 17:11:00 -- 我是隐藏了的 我在列表头 单击右键 隐藏该列 ,这应该也是隐藏列的允许方法吧 |
-- 作者:yinyb36 -- 发布时间:2012/10/11 17:15:00 -- 那该列不应该出现在字符串中啊 |
-- 作者:程兴刚 -- 发布时间:2012/10/11 17:17:00 -- 用循环语句将cvs包含0的列排除掉再设置列宽就隐藏了! |
-- 作者:狐狸爸爸 -- 发布时间:2012/10/11 17:20:00 -- 我改进一下。 |
-- 作者:程兴刚 -- 发布时间:2012/10/11 17:21:00 -- 以下是引用Fotable在2012-10-11 17:08:00的发言:
2.自己写 SetColVisibleWidth函数吗? 另外我觉得 贺老师应该改的是 GetColVisibleWidth 把为零的列 不需要列出来。 [此贴子已经被作者于2012-10-11 17:10:06编辑过]
GetColVisibleWidth不能修改的,假如您需要将隐藏的列调用出来,通过代码将为0的参数修改为其他值重新显示部分列办? |