powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ListView - куда подевалось свойство Items???
21 сообщений из 21, страница 1 из 1
ListView - куда подевалось свойство Items???
    #32127703
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем.

Тут неоднократно упоминался ActiveX контрол ListView в контексте работы с БД. Несколько раз пытался понять, как же его пользовать, так и не разобрался. Было ощущение, что не про тот контрол пишут. Сегодня залез в МСДН - и вот что пишут про ListView:

In the Properties window, click the ellipsis button () next to the Items property.
The ListViewItem Collection Editor appears.


У меня такого свойства просто нет :-0 Что за фигня?
Может что не так с версией? У меня версия 6 из MS Windows Common Controls 6.0 (SP4). Или просто я чего-то не понимаю?

Спасибо.
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32127735
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня тоже такого свойства нету, равно как и подобной записи в МСДН, проверьте исходные данные сэр :)
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32127911
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нажми F2 и увидешь все свойства.

А код выглядит примерно так(установи свойство View в 3-lwlReport:

Dim RowSost As MSComctlLib.ListItem
lv.ListItems.Clear

Set cnn = CurrentProject.Connection
Set rs = New ADODB.Recordset

rs.Open strSQL_plant, cnn, adOpenForwardOnly, adLockReadOnly, adCmdText
Do While Not rs.EOF
Lkey = rs(0).Value & Key_Spliter
Set RowSost = lv.ListItems.Add(, Lkey, Nz(rs(1).Value, " "))
rs.MoveNext
Loop
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128106
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую.

Код: plaintext
1.
Lkey = rs( 0 ).Value & Key_Spliter
Set RowSost = lv.ListItems.Add(, Lkey, Nz(rs( 1 ).Value,  " " )) 


Если можно, объясните пожалуйста эти две строки кода.
Не очень понятно, кто есть ху и зачем... :)
Если конкретно: что такое Lkey , Key_Spliter и Nz() ?

Заодно вопрос: как мне добавить значения во второй и третий столбец?
А вообще, может существует где-то дока по этому контролу, чтобы не мучать конфу... в моем МСДН ничего нет, так как он 2002 года и там только про одноименный контрол из Windows Forms (потому там все немного и по-другому)

Спасибо
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128121
Фотография NNN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128138
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> что такое Lkey, Key_Spliter и Nz()?

Lkey - уникальный ключ строки, обязательно д.б. строковым, в этом примере равно первому полю запроса и это поле у меня ключевое (уникальное, счетчик то бишь).
Справа прилепляем любой символ Key_Spliter (м.б. равен любой букве алфавита), теперь наш ключ полностью текстовый, если же потребуется его вычленить, то val(Ключ)
Nz() -функция преобразующая пустые значения в пробел (" "). ListView не очень корректно работает с Null (наблюдаются некоторые глюки при выделеной записи с Null полями)

>Заодно вопрос: как мне добавить значения во второй и третий столбец?

RowSost.SubItems(CStr(1)) = CStr(rs.Fields("НекотроеПоле1").Value) RowSost.SubItems(CStr(2)) = CStr(rs.Fields("НекотроеПоле2").Value)
RowSost.SubItems(CStr(3)) = CStr(rs.Fields("НекотроеПоле3").Value)

Не забудь в свойствах ListView указать нужное кол-во столбцов

>А вообще, может существует где-то дока по этому контролу, чтобы не мучать конфу... в моем МСДН ничего нет, так как он 2002 года и там только про одноименный контрол из Windows Forms (потому там все немного и по-другому)

Ну не верю что бы в MSDN не было этого элемента, хотя MSDN у меню от VS6 (за 98год), но насколько я знаю статьи там суммируются.
На вкладке Указателе набери- ListView control. Так же поищи файл CMCTL198.CHM.


>Спасибо
Не за что.
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128187
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую.

>Ну не верю что бы в MSDN не было этого элемента, хотя MSDN у меню от VS6 >(за 98год), но насколько я знаю статьи там суммируются.
Я так тоже думал, но похоже что нет :(

>На вкладке Указателе набери- ListView control. Так же поищи файл >CMCTL198.CHM.
А вот файл нашел. но где-то не в МСДН :)

Вроде разобрался. Только никак не могу понять:
когда в списке ничего нет, чему равен SelectedItem?
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128240
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>когда в списке ничего нет, чему равен SelectedItem?

А ты проверь.
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128250
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Опять проблема :(

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
        intCount =  1 
        Do While Not rs.EOF
            ListItems.Add intCount, , rs.Fields( "ID" )
            ListItems(intCount).ListSubItems.Clear
            ListItems(intCount).SubItems( 1 ) = rs.Fields( "Date" )
            ListItems(intCount).SubItems( 2 ) = rs.Fields( "Name" )
            rs.MoveNext
        intCount = intCount +  1 
        Loop


Заполняю список, все ок.
Как только ставлю флаг "sorted", все значения сабитемов в списке (кроме тех, которые в последней строке) стираются. Убираю - все ок. В чем дело?

Спасибо
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128263
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где Sort стаdишь в программе или в свойствах ListView,
В проге на событие ColumnClick уменя

mListForOperations.SortKey = ColumnHeader.Index - 1
mListForOperations.Sorted = True

и все работает
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128288
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> В проге на событие ColumnClick уменя
Сделал так же. Заработало
Спасибо :))

>> чему равен SelectedItem?
>А ты проверь.
Проверял, ессно. Говорит, что объектная переменная не задана.
Это как?
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128297
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все правильно, надо было точечку поставить и указть че ты от него хочешь

ListVeiw.SelectedItem.Key 'или Тext или Parent и т.п. см. хэлп
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128311
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Он это говорит даже если обращаться к любому из свойств :(
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128314
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
.SelectedItem Is Nothing помогло
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128782
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Еще вопрос :)

Насколько я понял, список все данные по умолчанию считает строками, и сортирует их соответственно :( как это победить?
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128803
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Насколько я понял, список все данные по умолчанию считает строками, и сортирует их соответственно :( как это победить?

Потому числовому полю котрое будешь сортировать делай
Format(Поле1,"00000")

т.е.
000001
000002
...
000010
000011
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128864
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как быть с датами?
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128933
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что с датами?
У меня все сортируется как доктор приписал.
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128937
igorilla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я так понимаю, их нужно привести к виду yyyy.mm.dd hh:mm:ss?
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32128944
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня dd.mm.yyyy, а что нужно тебе - решай надао самостоятельно
...
Рейтинг: 0 / 0
ListView - куда подевалось свойство Items???
    #32134629
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, наврал я про нормальную сортировку дат.
В MSDN есть пример (HOWTO: Sort a ListView Control by Date
Last reviewed: July 1, 1997 Article ID: Q170884 )

Сплошь недокументированные функции, но работает, правда, если в поле даты есть ПустыеЗаписи, то ни фига не сортируется. Вернее сортирует, но очень оригинально.
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ListView - куда подевалось свойство Items???
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]