如何使ListBox的水平滚动条正好适应最大内容大小

yuliang0828 2003-04-06 12:12:46
用SendMessage函数给ListBox发了设置水平滚动条的信息后会出现滚动条,但如何确定最大项目所占的像素数呢,就是要给参数传递进多少呢?还有一个相关的问题就是一个英文字符占几个像素?请各位高手给予解答,谢谢!
...全文
27 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
shenhai79 2003-04-06
  • 打赏
  • 举报
回复
Public Sub ShowListHscroll(List As ListBox)

Dim Max As Long, f As Font, i As Integer

Me.ScaleMode = vbPixels
Set f = Me.Font
Set Me.Font = List.Font

With List
For i = 0 To .ListCount
If Me.TextWidth(.List(i)) > Max Then
Max = Me.TextWidth(.List(i))
End If
Next i
End With

Max = Max + 10
Set Me.Font = f
SendMessage List.hWnd, LB_SETHORIZONTALEXTENT, Max, ByVal 0&

End Sub

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧