Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Рустам Назаров Гость
|
Добавлено: Пт Ноя 28 2003 14:58 Заголовок сообщения: Visual Basic ::: Список типа ListBox и элемент ScrollBar |
|
|
Уважаемые программисты,
Хотелось узнать как можно испольтзовать горизонтальную полосу прокрутки в объекте типа ListBox? Т.е. в случае, если элемент списка не помещается в нем, чтобы пользователь смог использовать полосу прокрутки для просмотра осавшуюся часть элемента. Заранее благодарю за Ваши полезные советы! |
|
Вернуться к началу |
|
|
Вячеслав Гость
|
Добавлено: Пт Ноя 28 2003 22:00 Заголовок сообщения: Re: Visual Basic ::: Список типа ListBox и элемент ScrollBar |
|
|
Попробуй так
Private Sub SetListboxScrollbar() Dim i As Integer Dim new_len As Long Dim max_len As Long
For i = To List1.ListCount - 1 new_len = 10 + ScaleX(TextWidth(List1.List(i)), _ ScaleMode, vbPixels) If max_len < new_len Then max_len = new_len Next i
SendMessage List1.hwnd, _ LB_SETHORIZONTALEXTENT, _ max_len, 0 End Sub |
|
Вернуться к началу |
|
|
Рустам Назаров Гость
|
Добавлено: Сб Ноя 29 2003 07:30 Заголовок сообщения: Re: Visual Basic ::: Список типа ListBox и элемент ScrollBar |
|
|
Что то не то ... Не получается |
|
Вернуться к началу |
|
|
Вячеслав Гость
|
Добавлено: Сб Ноя 29 2003 13:08 Заголовок сообщения: Re: Visual Basic ::: Список типа ListBox и элемент ScrollBar |
|
|
Итак по шагам 1. Добавь в проект формочку 2. кинь на формочку ListBox ( List1) 3.Копируем в код формы следующее: '----------> Private Const LB_SETHORIZONTALEXTENT = &H194 Private 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 SetListboxScrollbar() Dim i As Integer Dim new_len As Long Dim max_len As Long
For i = To List1.ListCount - 1 new_len = 10 + ScaleX(TextWidth(List1.List(i)), _ ScaleMode, vbPixels) If max_len < new_len Then max_len = new_len Next i
SendMessage List1.hwnd, _ LB_SETHORIZONTALEXTENT, _ max_len, 0 End Sub
Private Sub Form_Load() List1.AddItem "Hello" List1.AddItem "Hello slava" List1.AddItem "Hello world" SetListboxScrollbar End Sub ' |
|
Вернуться к началу |
|
|
|