VB的组合框控件ComBoBox控件列表项目如何居中,这是个难题。可以自绘,并且非常精确;也可以不用自绘,采用简单居中,即在前面加空格实现。至于加多少空格,要根据控件本身的宽度和列表项的文字多少来决定。由于这个方法是在列表项前面加空格实现的,不足一个空格将被忽略,因此不很精确,有误差,只有大概居中。
Option Explicit
Private Sub Form_Load()
Dim i As Long, W1 As Long, W2 As Long, W3 As Long, S As String, arr() As String
Me.ScaleMode = 3
Combo1.AddItem "C"
Combo1.AddItem "CS"
Combo1.AddItem "CSD"
Combo1.AddItem "CSDN中文网站"
Me.Font.Size = 48
Me.FontName = "黑体"
Combo1.Font.Size = Me.Font.Size
Combo1.FontName = Me.FontName
W2 = Me.TextWidth(" ")
W3 = Combo1.Width '/ Screen.TwipsPerPixelX
ReDim arr(Combo1.ListCount - 1)
For i = 0 To Combo1.ListCount - 1
S = Combo1.List(i)
S = Trim(S)
W1 = Me.TextWid