Консультация № 55951
19.09.2006, 13:35
0.00 руб.
0 6 5
Здравствуйте уважаемые коллеги!
В контроле ListBox есть свойство Columns. Чё с ним можно сделать? По логике оно устанавливает количество колонок, причем если его установить через окно Свойств например в 2, то да контрол делится на 2 колонки, а если вызвать из кода List1.Columns = 2, то ошибкаНу даже если я разделил на две колонки, как добавить строку во вторую колонку?

Обсуждение

Неизвестный
19.09.2006, 13:50
общий
это ответ
Здравствуйте, PsySex!

Это свойство только для чтения... Строки делятся по колонкам самим контролом в зависимости от их видимого количества.
Неизвестный
19.09.2006, 14:12
общий
это ответ
Здравствуйте, PsySex!
Вот Вам вариант рабочего кода. Содран из хелпа по листбоксу. У меня работал.
Скорей всего Вы перепутали Culumn и ColumnCount.
Запустите код - сразу все станет ясно.
Если глюки обнаружаться - пишите в личку.


Приложение:
Form1.ListBox1.ColumnCount = 2 Form1.ListBox1.AddItem "Item 1, Column 1" Form1.ListBox1.List(0, 1) = "Item 1, Column 2" Form1.ListBox1.AddItem "Item 2, Column 1" Form1.ListBox1.List(1, 1) = "Item 2, Column 2"
давно
Профессионал
848
1596
19.09.2006, 16:22
общий
to ADSota>>Строки делятся по колонкам самим контролом в зависимости от их видимого количества.Это как это? Я что-то не понял. Я делаю ListBox с 2 колонками и заношу List1.AddItem ("test") , строка появиться в первой колонке, а как во вторую-то внести?to Макаренко Е.В.У меня нет Form1.ListBox1.ColumnCount вообще. Я использую VB6 Version 8176 VBA: Reatail 6.0.8169Т.е. использование Вашего кода сразу генерит ошибку на компиляции, что Method not found. Может у меня старая версия контролов или как?
Неизвестный
19.09.2006, 20:52
общий
это ответ
Здравствуйте, PsySex!
В VB свойство ListBox.Columns=0 устанавливает отображение списка вертикально в одну колонку, программно не изменяется. Свойство ListBox.Columns = i устанавливает горизонтальное отображение списка числом колонок равным i. Число i можно изменять (только не на 0), будет изменяться отображаемое колличество колонок, но это только отображение, работа с ListBox не изменяется.

Удачи.
Евгений

Неизвестный
21.09.2006, 14:09
общий
это ответ
Здравствуйте, PsySex!
Используйте метод addNew("Текст")
Удачи!
Неизвестный
21.09.2006, 17:37
общий
это ответ
Здравствуйте, PsySex!

Не знаю, в чем у Вас проблема. Я использую VB 6.0 в составе Microsoft Visual Studio SP5 - все нормально. Я просто создал форму, поместил ListBox, TextBox и Command1.
Свойства контролов вообще не трогал, за исключением одного: сразу ввел 7 значений в List1.List. Размер контрола на форме установил таким образом, чтобы помещалось по высоте только 5 значений. Запустил на выполнение - появились значения в 2 столбца. Фактически, вся программа состоит всего из одной строки:

Command1_Click()
List1.AddItem Text1.Text
End sub

Ввожу сколько угодно значений - и контрол помещает их в несколько столбцов.
Форма ответа