Как сделать горизонтальный скролинг listbox'а? - VB
Формулировка задачи:
Как сделать горизонтальный скролинг listbox'а?
подскажите.
Решение задачи: «Как сделать горизонтальный скролинг listbox'а?»
textual
Листинг программы
- 'Пример 1
- Private Declare Function SendMessageByNum Lib "user32" Alias "SendMessageA" _
- (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
- Const LB_SETHORIZONTALEXTENT = &H194
- Private Sub Form_Load()
- Static x As Long
- List1.AddItem "Добавление длинной строки для проверки примера"
- 'Замените все значения 'List1.List(0)'самым длинным элементом ListBox'а
- If x < TextWidth(List1.List(0) & " ") Then
- x = TextWidth(List1.List(0) & " ")
- If ScaleMode = vbTwips Then x = x / Screen.TwipsPerPixelX
- SendMessageByNum List1.hwnd, LB_SETHORIZONTALEXTENT, x, 0
- End If
- End Sub
- 'Пример 2
- Private Declare Function SendMessageByNum Lib "user32" Alias "SendMessageA" _
- (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
- Const LB_SETHORIZONTALEXTENT = &H194
- Private Sub Command1_Click()
- Dim s As String
- Static x As Long
- s = InputBox("Please enter any text", "List scroll", "this is a simple scrollbar sample for demonstration purposes")
- List1.AddItem s
- If x < TextWidth(s & " ") Then
- x = TextWidth(s & " ")
- If ScaleMode = vbTwips Then x = x / Screen.TwipsPerPixelX
- SendMessageByNum List1.hwnd, LB_SETHORIZONTALEXTENT, x, 0
- End If
- End Sub
- 'Пример 3
- Private Declare Function SendMessageByNum Lib "user32" Alias "SendMessageA" _
- (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
- Const LB_SETHORIZONTALEXTENT = &H194
- Private Sub Command1_Click()
- Static x As Long
- For Item = List1.ListCount - 1 To 0 Step -1
- If x < TextWidth(List1.List(Item) & " ") Then
- x = TextWidth(List1.List(Item) & " ")
- End If
- Next
- If ScaleMode = vbTwips Then x = x / Screen.TwipsPerPixelX
- SendMessageByNum List1.hwnd, LB_SETHORIZONTALEXTENT, x, 0
- End Sub
- Private Sub Form_Load()
- List1.AddItem "длинная переменная, которую надо"
- List1.AddItem "длинная переменная, которую надо увидеть или не увидеть или еще что-то"
- List1.AddItem "длинная переменная, которую надо увид"
- List1.AddItem "длинная переменная, которую надо увидеть или не увидеть или еще что-тоывеапапавп"
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д