设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: todaynew
打印 上一主题 下一主题

[宏/菜单/工具栏] 【Access小品】第100个是铜像---文本框字号自适应列宽

[复制链接]
11#
发表于 2010-8-13 14:51:34 | 只看该作者
确有此问题。
todaynew 发表于 2010-8-13 14:41

版主敬业
向您学习

12#
发表于 2010-8-13 15:16:01 | 只看该作者
我修改了一下请老汉指正
‘=======================
Function ctlFontSize(ctl As Control)
Dim w As Single, c As Single, d As Single
Dim i As Long
Dim b As Boolean
ctl.FontSize = Nz(n) '1 磅等于1/72 英寸
'1440 缇等于一英寸
w = ctl.Width / 1440

For i = n To 1 Step -1
'使用vbFromUnicode判断中文字符有几个
'注意unicode编码的字串(如中文、日文、韩文等)
c = LenB(StrConv(Nz(ctl.Value, ""), vbFromUnicode)) - Len(Nz(ctl.Value, ""))
d = Len(Nz(ctl.Value, "")) - c
b = ((2 * c + d + 1) * i) / (2 * 72) - w <= 0
'b = ((Len(ctl.Value) + 1) * i) / (2 * 72) - w <= 0
    If b = True Then
        ctl.FontSize = i
        Exit For
    End If
Next
End Function

评分

参与人数 1经验 +6 收起 理由
todaynew + 6 我很赞同

查看全部评分

13#
 楼主| 发表于 2010-8-13 15:44:36 | 只看该作者
谢谢xuwenning 同志的批评指正,并赞赏直言不讳的精神。对其中的StrConv函数还没用过,需要进一步学习一下。
14#
发表于 2010-8-13 22:11:31 | 只看该作者
todaynew 同志,以我看,站主还有大家应该对网站有贡献的学友们搞个仪式,在您的第100个作品发表之日就该为您搞个庆祝活动,并记录在案。鼓励大家向您学习。不知如何?
15#
发表于 2010-8-13 23:05:36 | 只看该作者
todaynew 同志,以我看,站主还有大家应该对网站有贡献的学友们搞个仪式,在您的第100个作品发表之日就该为 ...
li08hua 发表于 2010-8-13 22:11

赞同楼上的
特别是老汉令我汗颜
现在下决心努力向他学习


点击这里给我发消息

16#
发表于 2010-8-14 19:59:00 | 只看该作者
还有一个问题,就是修改此行数据后,自动适应列宽功能不失效了,直到下次打开才又好了
17#
发表于 2010-8-14 21:11:16 | 只看该作者
还有一个问题,就是修改此行数据后,自动适应列宽功能不失效了,直到下次打开才又好了
真主 发表于 2010-8-14 19:59

可以统一使用n=10的字体
跟新后再次调用


18#
发表于 2012-1-10 15:15:53 | 只看该作者
收藏学习
19#
发表于 2012-5-7 17:01:15 | 只看该作者
谢谢,学习中~~~~~~~~~~
20#
发表于 2016-2-29 09:51:28 | 只看该作者
太厉害了,,,,,
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-2 13:59 , Processed in 0.109611 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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