光纤熔接 ERP

弱电论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 782|回复: 0
打印 上一主题 下一主题

【Access小品】列表框宽度自适应

[复制链接]
跳转到指定楼层
1#
发表于 2012-3-26 17:27:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
华为代理商
  昨天根据版友石三少同志的问题编写了一个导入导出的实例,在这个实例中用到了列表框来显示不同表的数据,这样的处理有个好处可以不必考虑子窗体增减控件的问题。但是昨天的实例留下来一个小问题,就是不同的数据表列宽都是一致的,数据要么显示不全,要么留白太多,实在不美观。根据这样一个遗留问题,今日写就本实例,解决列表框列宽自适应记录宽度问题。


  1. Function GetcomWidths(ctl As Control, ftSize As Long)
  2. '功能:列表框字段框度自适应
  3. '参数:ctl--列表框控件,ftSize--字号
  4. '示例:GetcomWidths me.记录,10
  5. Dim rs As New ADODB.Recordset
  6. Dim i As Long, j As Long
  7. Dim comWidths As String
  8. Dim w As Single
  9. rs.Open ctl.RowSource, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
  10. ctl.FontSize = ftSize
  11. For i = 0 To rs.Fields.Count - 1
  12.         rs.MoveFirst
  13.         w = 0
  14.         For j = 1 To rs.RecordCount
  15.               If Len(Nz(rs(i).Value, "")) > w Then w = Len(Nz(rs(i).Value, ""))
  16.               rs.MoveNext
  17.         Next
  18.         If w > 20 Then w = 20
  19.         w = 0.0353 * (w + 1) * ctl.FontSize
  20.         comWidths = comWidths & w & " cm;"
  21. Next
  22. ctl.ColumnWidths = comWidths
  23. rs.Close
  24. End Function
复制代码



附件下载:列表框宽度自适应.rar
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|广告咨询|VIP注册|关于我们|联系我们|积分规则|手机版|Archiver|弱电之家论坛 ( 京ICP备11008917号-3 )

GMT+8, 2025-6-19 20:48 , Processed in 0.037714 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表