Как писать / читать из многоколоного ListBox или ListView?

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
AndreyMust19
Начинающий
Начинающий
 
Сообщения: 11
Зарегистрирован: 20.03.2009 (Пт) 23:11

Как писать / читать из многоколоного ListBox или ListView?

Сообщение AndreyMust19 » 21.03.2009 (Сб) 0:00

Здавствуйте!
VB пользуюсь редко, но иногда приходится. И вот мне дали бессрочное "задание" и вдруг говорят - к понедельнику должно быть готово!
Результат работы я решил выводить в виде таблицы. Надо создать элемент из нескольких столбцов (н-р 6 штук) и записать туда текст. ListBox не подходит, так как в него все вставляется в один столбик. Прошелся поиском по форуму - узнал о ListView. Я понял что сначала надо добавить в него новую строку (Add), а затем изменить ее столбики. Вот только ни один из найденных примеров не работает. Скажите, как добавлять в стоблики ListView'а новые значения.
Надо чтобы выглядело вот так:
Изображение

MIT
Мега гуру
Мега гуру
Аватара пользователя
 
Сообщения: 2211
Зарегистрирован: 17.09.2006 (Вс) 22:46

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение MIT » 21.03.2009 (Сб) 0:07

Поиск "SubItems" по форуму :wink:
Изображение
You can change your face, but can`t change your mind. No matter what you do.
Создайте еще более понятный интерфейс и мир создаст еще более тупого юзера. (с) Баш

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение iGrok » 21.03.2009 (Сб) 0:11

По ходу плохо искал..

Код: Выделить всё
Dim e As ListItem
Set e = ListView1.ListItems.Add(1, , CStr(Rnd))


Потом работаешь с e.ListSubItems...
label:
cli
jmp label

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение Хакер » 21.03.2009 (Сб) 0:16

Код: Выделить всё
Sub AddRow(ByVal sProcName As String, ByVal lProcId As Long, ByVal sProtocol As String, ByVal sLocAddr As String, ByVal lLocPort As Long, ByVal sRemAddr As String, ByVal lRemPort As Long, ByVal sState As String)
    With LV.ListItems.Add(думай_сам, думай_сам, sProcName + ":" + CStr(lProcId), , думай_сам)
        .SubItems(1) = sProtocol
        .SubItems(2) = sLocAddr + ":" + CStr(lLocPort)
        .SubItems(3) = sRemAddr + ":" + CStr(lRemPort)
        .SubItems(4) = sState
    End With
End Sub



Странно, я думал, наибольшие проблемы будут с получением информации о соединениях, а не с ListView.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение iGrok » 21.03.2009 (Сб) 0:43

Хакер писал(а):Странно, я думал, наибольшие проблемы будут с получением информации о соединениях, а не с ListView.

Мне кажется, скрин приведён просто для примера..
label:
cli
jmp label

AndreyMust19
Начинающий
Начинающий
 
Сообщения: 11
Зарегистрирован: 20.03.2009 (Пт) 23:11

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение AndreyMust19 » 21.03.2009 (Сб) 1:09

Хорошо, я еще раз попробую. А рисунок я привел только в качестве примера - как желательно должно выглядеть (порты мне не нужны).
Попробовал. Вы меня хоть убейте, но не получается. SubItems работает, но в ListViewResult все равно текст только в одном столбике. Вот моя программа:
http://exfile.ru/31790
Посмотрите, может ошибка в чем-то особенном. Я ведь не буду просто так писать на форум, я сначала поискал информацию, но она не заработала.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение iGrok » 21.03.2009 (Сб) 2:37

AndreyMust19 писал(а):Хорошо, я еще раз попробую. А рисунок я привел только в качестве примера - как желательно должно выглядеть (порты мне не нужны).
Попробовал. Вы меня хоть убейте, но не получается. SubItems работает, но в ListViewResult все равно текст только в одном столбике. Вот моя программа:
http://exfile.ru/31790
Посмотрите, может ошибка в чем-то особенном. Я ведь не буду просто так писать на форум, я сначала поискал информацию, но она не заработала.

Так. Ну тогда ещё пара моментов.
1) Нужно выставить стиль в lvwReport
2) Нужно задать список колонок. Либо в дизайнере, либо кодом. Если не ошибаюсь, что-то типа Columns.Add
label:
cli
jmp label

AndreyMust19
Начинающий
Начинающий
 
Сообщения: 11
Зарегистрирован: 20.03.2009 (Пт) 23:11

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение AndreyMust19 » 21.03.2009 (Сб) 8:47

iGrok
2) Нужно задать список колонок.

Список колонок у меня есть, иначе код S.SubItems(1) = "Text" не интерпретировался, так как не существовало бы колонки с икдексом 1. А код интерпретируется, но вот текст в колонках не появляется.
1) Нужно выставить стиль в lvwReport

А вот это попробую.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение iGrok » 21.03.2009 (Сб) 11:24

AndreyMust19 писал(а):
1) Нужно выставить стиль в lvwReport

А вот это попробую.

Если что, это свойство View.
label:
cli
jmp label

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение Хакер » 21.03.2009 (Сб) 11:38

AndreyMust19 писал(а):иначе код S.SubItems(1) = "Text" не интерпретировался

Какой кошмар. Код бы прекрасно "интерпретировался". Просто он бы при выполнении выбрасывал ошибку.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

AndreyMust19
Начинающий
Начинающий
 
Сообщения: 11
Зарегистрирован: 20.03.2009 (Пт) 23:11

Re: Как писать / читать из многоколоного ListBox или ListView?

Сообщение AndreyMust19 » 29.03.2009 (Вс) 16:40

Фу, разобрался неделю назад, получилось! Дело было в Report. Спасибо всем, ждите продолжения.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 42

    TopList