Разноцветный текст в ListBox

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

Разноцветный текст в ListBox

Сообщение Hawk[BZ] » 30.01.2004 (Пт) 20:27

Есть такая проблема... Или не проблема. Вобщем можно ли сделать чтобы в списке (ListBox) текст был цветным. То есть одни строки одного цвета, другие - другого. Ну или вообще какое-нибудь выделение. Например, есть такой объект как ImageCombo. Там можно рядом с текстом ставить картинки. Но в данном случае мне нужен именно ListBox или что-то подобное. Вот...

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

RTFM! ListView!

Сообщение hCORe » 30.01.2004 (Пт) 21:52

RTFM!!! ListView

Ставишь на форму ListView с именем ListView1 и юзаешь следующий код:
Код: Выделить всё
Private Sub Form_Load()
On Error Resume Next
    ListView1.ListItems.Add , , "TXCT!!!"
    ListView1.ListItems.Add , , "TXCT2!!!"
    ListView1.ListItems.Add , , "TXCT3!!!"
    ListView1.ListItems.Add , , "TXCT4!!!"
    ListView1.ListItems.Add , , "TXCT5!!!"
    ListView1.ListItems.Item(1).ForeColor = vbBlue
    ListView1.ListItems.Item(2).ForeColor = vbRed
    ListView1.ListItems.Item(3).ForeColor = vbGreen
    ListView1.ListItems.Item(4).ForeColor = vbMagenta
    ListView1.ListItems.Item(5).ForeColor = vbCyan
End Sub


и в дизайн-тайме ставишь View=lvwList
Моду создают модоки, а распространяют модозвоны.

Hawk[BZ]
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 30.01.2004 (Пт) 20:14

Re: RTFM! ListView!

Сообщение Hawk[BZ] » 31.01.2004 (Сб) 0:26

Да что-то он не хочет писать ForeColor. Ошибку выдает... Просто ListView1.ForeColor=vbRed он понимает... а ListView1.ListItems.Item(2).ForeColor = vbRed не хочет...

Amed
Алфизик
Алфизик
 
Сообщения: 5346
Зарегистрирован: 09.03.2003 (Вс) 9:26

Сообщение Amed » 31.01.2004 (Сб) 9:28

Внимательней! Кажется, ты используешь не ListView, а ListBox!!!
ListView подключается через Project|Components!

Hawk[BZ]
Начинающий
Начинающий
 
Сообщения: 6
Зарегистрирован: 30.01.2004 (Пт) 20:14

Сообщение Hawk[BZ] » 31.01.2004 (Сб) 21:28

Нет.. Я как раз ListView использую. Но вот не принимает он такую команду. Там есть еще что-то типа icons и smallicons. А ими как пользоваться? Вы уж извините за глупые вопросы. :)

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

6/0/SP5

Сообщение hCORe » 01.02.2004 (Вс) 14:57

Внимание! Версия M$ Common Controls у меня - 6.0 SP5, поэтому все работает :wink:. Если использовать обычный List - то этого можно добиться только через субклассирование (создание собственных классов окон и перехват сообщений). Посему - читайте статьи на vbAccelerator'e.
Моду создают модоки, а распространяют модозвоны.


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

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

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

    TopList