Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / ListView - куда подевалось свойство Items??? / 21 сообщений из 21, страница 1 из 1
26.03.2003, 18:47
    #32127703
igorilla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
Привет всем.

Тут неоднократно упоминался 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
26.03.2003, 19:33
    #32127735
Magnus23
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
У меня тоже такого свойства нету, равно как и подобной записи в МСДН, проверьте исходные данные сэр :)
...
Рейтинг: 0 / 0
27.03.2003, 10:20
    #32127911
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
Нажми 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
27.03.2003, 13:30
    #32128106
igorilla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
Приветствую.

Код: 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
27.03.2003, 13:42
    #32128121
NNN
NNN
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
...
Рейтинг: 0 / 0
27.03.2003, 13:51
    #32128138
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
> что такое 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
27.03.2003, 14:37
    #32128187
igorilla
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
Приветствую.

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

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

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

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

Код: 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
27.03.2003, 15:31
    #32128263
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ListView - куда подевалось свойство Items???
Где Sort стаdишь в программе или в свойствах ListView,
В проге на событие ColumnClick уменя

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

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

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

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

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

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

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

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


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