Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   ListView в VB6 (http://forum.oszone.net/showthread.php?t=174724)

Synthetyic_Man 03-05-2010 10:10 1405629

ListView в VB6
 
Помогите пожалуйста с примером кода. Я начинающий в VB6 и у меня возникла трудность.
На форме ListView и кнопка. Нужно что бы при нажатии кнопки происходило поочередное выделение строчек в ListView, как будто бы ты щелкаешь мышью. Т.е. нажил один раз кнопку -выделилась верхняя строка и произошел клик, нажал еще раз кнопку -выделилась строка ниже и тоже по ней произошел клик и т.д. После того, как весь список будет пройден опять все повторялось по кругу. Спасибо!

MERDOCK 11-05-2010 05:52 1410652

Вот процедура, которая сделает, то что тебе надо:
Код:

Private Sub NextItemSelect()
        Dim Indx As Integer 'Индекс итема
       
        'Проверка наличия итемов в ListView
        If Me.ListView1.Items.Count = 0 Then Exit Sub

        'Если ни один из итемов не выбран то
        If Me.ListView1.SelectedItems.Count = 0 Then

            'выбираем индекс первого итема
            Indx = 0

        Else 'А если выделен какой-то итем то
            'Если выбранный итем является последним то
            If Me.ListView1.SelectedItems(Me.ListView1.SelectedItems.Count - 1).Index >= Me.ListView1.Items.Count - 1 Then
                Indx = 0
            Else 'Иначе получаем [индекс последнего итема]+1
                Indx = Me.ListView1.SelectedItems(Me.ListView1.SelectedItems.Count - 1).Index + 1
            End If

        End If
        'Снимаем выделение со всех итемов
        Me.ListView1.SelectedItems.Clear()

        'Теперь просим ListView выделить нужный нам итем
        Me.ListView1.Items(Indx).Selected = True

        'Просим показать выбранный элемент, выполняя прокрутку
        Me.ListView1.Items(Indx).EnsureVisible()

        'Переводим фокус на ListView
        Me.ListView1.Select()
    End Sub



Время: 20:34.

Время: 20:34.
© OSzone.net 2001-