private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As LongSendMessage LST1.hwnd, &H194, 250, 0
Option ExplicitPrivate Const LB_SETHORIZONTALEXTENT = &H194 Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Private Sub Command1_Click() Dim max As Long, f As Font, i As Integer
Me.ScaleMode = vbPixels Set f = Me.Font Set Me.Font = List1.Font
With List1 For i = 0 To .ListCount If Me.TextWidth(.List(i)) > max Then max = Me.TextWidth(.List(i)) End If Next End With max = max + 10 Set Me.Font = f
SendMessage List1.hwnd, LB_SETHORIZONTALEXTENT, max, ByVal 0& End Sub
请可以给出API 常量与其具体的数值吗?这样偶容易维护,呵呵。
还是兄弟厉害,偶还有另外一个问题请教:
http://www.csdn.net/expert/topic/236/236132.shtm
偶没有这类别的书耶,请问,类似的问题应该看什么书,可以介绍一下吗?
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Sub Command1_Click()
Dim max As Long, f As Font, i As Integer
Me.ScaleMode = vbPixels
Set f = Me.Font
Set Me.Font = List1.Font
With List1
For i = 0 To .ListCount
If Me.TextWidth(.List(i)) > max Then
max = Me.TextWidth(.List(i))
End If
Next
End With
max = max + 10 Set Me.Font = f
SendMessage List1.hwnd, LB_SETHORIZONTALEXTENT, max, ByVal 0&
End Sub