Office中国论坛/Access中国论坛

标题: 用ColumnHidden隐藏列的真正方法 [打印本页]

作者: huangqinyong    时间: 2010-9-12 10:39
标题: 用ColumnHidden隐藏列的真正方法
作者:十段   文章来源:AccessHome
         
        说到隐藏列的方法,大家自然而然会想到用ColumnHidden,然而,当你双击列时你刚才隐藏的那些列却又显示出来,无法隐身了,平添你的烦恼,看来用ColumnHidden来隐藏列可能是Access的一大缺陷吧,因为它没有真正起到隐藏的功能,那么有没有好的办法,使之真正隐身呢?我的解决方法是,在子窗体的双击事件下根据主窗体的条件,再写入一边ColumnHidden,这样真正实现隐藏列的功能了,请看下面的演示:
[attach]43456[/attach]

作者: tmtony    时间: 2010-9-12 13:09
谢谢huangqinyong 分享,我也是用这样的方法
作者: sxb2007    时间: 2010-9-12 14:23
我还有一办法,子窗体做成连续窗体,把不要的字段进行隐藏,在把没有隐藏的字段进行从新排序,方可解决问题。以前我以是这样,后来写了一个通用函数,所以就解决了这样的烦问题。
作者: aslxt    时间: 2010-9-12 15:42
好东西,可惜...
作者: aslxt    时间: 2010-9-12 15:49
没有实例可以研习
作者: li08hua    时间: 2010-9-12 15:58
其实,隐藏的办法还有几种,主要看个人习惯和需求。
作者: fnsmydyang    时间: 2010-9-13 20:51
本帖最后由 fnsmydyang 于 2010-9-13 21:11 编辑

学习一下,谢谢。。。
代码如下:
主窗体加载时
Private Sub Form_Load()
   Me.存书查询子窗体.Form.Controls("书名").ColumnHidden = True
End Sub
子窗体双击时
Private Sub Form_DblClick(Cancel As Integer)
    Me.书名.ColumnHidden = True
End Sub
但还有一问题请教,如果按住鼠标左键拖,好象还是可以显出来哟,有没有办法解决这一问题呢?
请各位赐教。。。。。。,谢谢

作者: huangqinyong    时间: 2010-9-13 22:22
回复 fnsmydyang 的帖子
想解决——如果按住鼠标左键拖,好象还是可以显出来哟,有没有办法解决这一问题呢?
解决的方法:可以在子窗体属性中的鼠标释放事件下也写入代码,效果如下图所示:

[attach]43468[/attach]
你试一下看看

作者: fnsmydyang    时间: 2010-9-13 22:48
十段老师,为什么有时候行有时候又不行呢?(连续多次拖动),我上传附件帮我看看是怎么会事呢?


作者: huangqinyong    时间: 2010-9-13 23:12
已帮你修改了,在AccessHome论坛上,我估计你没有看明白我在文章中说到的"在子窗体的双击事件下根据主窗体的条件"

作者: gdys01    时间: 2011-7-11 19:19
,如果按住鼠标左键拖,好象还是可以显出来哟,有没有办法解决这一问题呢?
请各位赐教。。。。。。,谢谢

作者: chaosheng    时间: 2011-10-31 11:12
如果鼠标斜着拖到数据控件处释放,即释放事件在数据控件不在窗体,隐藏列能显示,窗体的释放事件再隐藏也无效.
寻求比较好的解决办法......
作者: pq318    时间: 2011-10-31 12:09
受教了,谢谢各位的点评
作者: yedaoan    时间: 2015-4-4 15:58
这个办法真好
作者: sunwrsun    时间: 2015-11-13 11:54
看看
作者: sunwrsun    时间: 2016-9-17 23:16
看看
作者: sunwrsun    时间: 2018-12-21 21:59
谢谢




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3