Я пытаюсь применить настраиваемые цвета фона строк в списковой обзор в приложении 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
Почему мой пользовательский рисунок ListView не применяет цвета фона строк в API Win32? ⇐ C++
Программы на C++. Форум разработчиков
1743619253
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>
. Видимо.>
Подробнее здесь: [url]https://stackoverflow.com/questions/79550266/why-is-my-listview-custom-drawing-not-applying-row-background-colors-in-win32-ap[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия