Почему мой пользовательский рисунок ListView не применяет цвета фона строк в API Win32?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Почему мой пользовательский рисунок ListView не применяет цвета фона строк в API Win32?

Сообщение Anonymous »

Я пытаюсь применить настраиваемые цвета фона строк в списковой обзор в приложении Win32 на основе диалога с использованием wm_notify и nm_customdraw .
Однако цвета не применяются правильно, и ListView появляется с его цветами по умолчанию. /> [*] Установите lvs_owndradrawfixed в listView_setextendistSiveStyle () .

обработанная wm_notify с CDDS_PRepaint и CDDS_ITEMPREPAINT hwndFrom == featherListView) {
LPNMLVCUSTOMDRAW lplvcd = (LPNMLVCUSTOMDRAW)lParam;

switch (lplvcd->nmcd.dwDrawStage) {
case CDDS_PREPAINT:
return CDRF_NOTIFYITEMDRAW;

case CDDS_ITEMPREPAINT:
return CDRF_NOTIFYSUBITEMDRAW;

case CDDS_SUBITEM | CDDS_ITEMPREPAINT:
{
int row = lplvcd->nmcd.dwItemSpec;
if (row == 0) {
lplvcd->clrTextBk = RGB(50, 100, 200);
lplvcd->clrText = RGB(255, 255, 255);
}
else if (row % 2 == 0) {
lplvcd->clrTextBk = RGB(220, 230, 250);
}
else {
lplvcd->clrTextBk = RGB(240, 240, 255);
}
return CDRF_NEWFONT;
}
}
}
break;
< /code>
< /li>
< /ul>
Ожидаемое поведение: < /p>
Ряд списков должен иметь чередующиеся цвета фона (синий для заголовка, светлый синий для ровных рядов, очень светлые для нечетных рядов). < /p>
. Видимо.>

Подробнее здесь: https://stackoverflow.com/questions/795 ... n-win32-ap
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»