Сообщение LVM_SETTEXTCOLOR

Const LVM_FIRST = &H1000
Const LVM_SETTEXTCOLOR = (LVM_FIRST + 36)

Сообщение LVM_SETTEXTCOLOR возвращает цвет текста в ListView

Возвращаемое значение

В успешном случае возвращается цвет текста

Параметры

wParam
Не используется. Установите равным 0
lParam
Новый цвет текста

Пример

' Изменим цвет текста под значками на Рабочем столе
Dim lProgman As Long
Dim lSHELLDLLDefView As Long
Dim lSysListView32   As Long

' Получим дескриптор Рабочего стола

lProgman = FindWindow("Progman", "Program Manager")
If lProgman = 0 Then Exit Sub

' Сначала получим дочернее окно с именем класса "SHELLDLL_DefView"
lSHELLDLLDefView = FindWindowEx(lProgman, 0&, "SHELLDLL_DefView", vbNullString)
If lSHELLDLLDefView = 0 Then Exit Sub

' Теперь получим его дочернее окно (т.е. окно Рабочего стола)
lSysListView32 = FindWindowEx(lSHELLDLLDefView, 0&, "SysListView32", vbNullString)
If lSysListView32 = 0 Then Exit Sub
' Меняем цвет текста под значками на красный
SendMessage lSysListView32, LVM_SETTEXTCOLOR, 0&, vbRed

' Теперь надо обновить область окна Рабочего стола
Call InvalidateRect(lSysListView32, ByVal 0&, True)
Call UpdateWindow(lSysListView32)

Категория

ListView (Табличный список)