Установка стиля столбца? (Неуправляемый с ++) - PullRequest
1 голос
/ 26 ноября 2009

В настоящее время я могу установить стиль просмотра списка VIA методом ListView_SetExtendedListViewStyle, однако при этом все столбцы имеют одинаковый стиль. Моя цель - изменить только один столбец (в основном стиль LVS_EX_UNDERLINEHOT | LVS_EX_UNDERLINECOLD | LVS_EX_TWOCLICKACTIVATE).

Есть ли способ изменить стиль только одного столбца, а не всей таблицы?

Редактировать: Или даже способ пользовательского рисования ячейки?

Ответы [ 2 ]

2 голосов
/ 28 ноября 2009

Существует учебник по использованию элемента управления ListView под Win32 API, по CodeProject .

Найдите часть под названием --- Подпункт Цвета --- в "ListView Colors" . Там вы увидите следующий код, в котором вы должны поместить соответствующий вызов ListView_SetExtendedListViewStyle () внутри оператора case:

case CDDS_SUBITEM | CDDS_ITEMPREPAINT: 
        {
            switch(lplvcd->iSubItem)
            {
                case 0: // Your first column
1 голос
/ 26 ноября 2009

Если вы используете WTL framework, то есть очень полезный класс CCustomDraw, который вы можете использовать для простого перехвата сообщений NM_CUSTOMDRAW и создания своего собственного содержимого просмотра списка.

Есть хорошая статья CodeProject о пользовательском рисовании с использованием WTL здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...