Есть некоторая таблица m_IDC_LIST1 типа CListCtrl. Как вставить рисунок в клетку этой таблицы?
Я понимаю, что надо создать класс-потомок от CListCtrl, но как это сделать?
1613 г. = 2024 г.
Re: Как вставить рисунок в клетку таблицы (CListCtrl)?
Здравствуйте, RussianFellow, Вы писали:
RF>Есть некоторая таблица m_IDC_LIST1 типа CListCtrl. Как вставить рисунок в клетку этой таблицы? ответ от 1999г RF>Я понимаю, что надо создать класс-потомок от CListCtrl, но как это сделать?
нет.
Re[2]: Как вставить рисунок в клетку таблицы (CListCtrl)?
но всё же самый лучший вариант — это эмбедить Internet Explorer в нужные ячиейки и в нем открывать страничку с картинкой типа <html><body><img src="file:///c:/Мои документы/Мои картинки/Картинко.jpeg" alt="Нет картинко"/></body></html>
Пользователи оценят
Re[3]: Как вставить рисунок в клетку таблицы (CListCtrl)?
А можно ли задать для m_IDC_LIST1 стиль LVS_OWNERDRAWFIXED и обработать сообщение WM_DRAWITEM? Особенно в случае, когда изображение не загружается из файла, а рисуется в процессе выполнения программы?
1613 г. = 2024 г.
Re: Как вставить рисунок в клетку таблицы (CListCtrl)?
Здравствуйте, RussianFellow, Вы писали:
RF>Есть некоторая таблица m_IDC_LIST1 типа CListCtrl. Как вставить рисунок в клетку этой таблицы? RF>Я понимаю, что надо создать класс-потомок от CListCtrl, но как это сделать?
На codeproject.com и codeguru.com полно таких примеров.
Сам активно смотрел там исходники по MFC. Лет 15-20 назад.
Re[4]: Как вставить рисунок в клетку таблицы (CListCtrl)?
Здравствуйте, RussianFellow, Вы писали:
RF>А можно ли задать для m_IDC_LIST1 стиль LVS_OWNERDRAWFIXED и обработать сообщение WM_DRAWITEM? Особенно в случае, когда изображение не загружается из файла, а рисуется в процессе выполнения программы?
лучше перехватывать WM_PAINT и с помощью GetPixel() искать границы ячейки и там рисовать
Re[5]: Как вставить рисунок в клетку таблицы (CListCtrl)?
Здравствуйте, RonWilson, Вы писали:
RW>Здравствуйте, RussianFellow, Вы писали:
RF>>А можно ли задать для m_IDC_LIST1 стиль LVS_OWNERDRAWFIXED и обработать сообщение WM_DRAWITEM? Особенно в случае, когда изображение не загружается из файла, а рисуется в процессе выполнения программы?
RW>лучше перехватывать WM_PAINT и с помощью GetPixel() искать границы ячейки и там рисовать
А WM_PAINT для какого компонента--для CListCtrl или для его родителя (то есть диалога или компонента, на котором помещён CListCtrl)?
1613 г. = 2024 г.
Re[6]: Как вставить рисунок в клетку таблицы (CListCtrl)?
Здравствуйте, RussianFellow, Вы писали:
RF>>>А можно ли задать для m_IDC_LIST1 стиль LVS_OWNERDRAWFIXED и обработать сообщение WM_DRAWITEM? Особенно в случае, когда изображение не загружается из файла, а рисуется в процессе выполнения программы?
RW>>лучше перехватывать WM_PAINT и с помощью GetPixel() искать границы ячейки и там рисовать
RF>А WM_PAINT для какого компонента--для CListCtrl или для его родителя (то есть диалога или компонента, на котором помещён CListCtrl)?
лучше для родителя IE, который вставлен в ячейку
Re[7]: Как вставить рисунок в клетку таблицы (CListCtrl)?
Здравствуйте, RonWilson, Вы писали:
RW>>>лучше перехватывать WM_PAINT и с помощью GetPixel() искать границы ячейки и там рисовать
RF>>А WM_PAINT для какого компонента--для CListCtrl или для его родителя (то есть диалога или компонента, на котором помещён CListCtrl)?
RW>лучше для родителя IE, который вставлен в ячейку
Ясно, понял.
1613 г. = 2024 г.
Re[5]: Как вставить рисунок в клетку таблицы (CListCtrl)?
Здравствуйте, RussianFellow, Вы писали:
RF>Здравствуйте, RonWilson, Вы писали:
RW>>лучше перехватывать WM_PAINT и с помощью GetPixel() искать границы ячейки и там рисовать
RF>А как определить текущую строку таблицы в методе OnPaint ?
точно также: GetPixel-ом выбираем наиболее темный прямоугольник
Re: Как вставить рисунок в клетку таблицы (CListCtrl)?
Строки с закрашиваемыми зонами и с текстом отображаются.
Но есть одена проблема: при прокрутке вертикального скроллбара таблицы вниз, а потом вверх не отображается содержимое (текстовое) самого первого (т.е. нулевого) столбца таблицы у первых строк таблицы, которые отображались нормально перед первоначальной прокруткой таблицы вниз. В чём причина этого? Как сделать так, чтобы при возвращения вертикального скроллбара таблицы к её первым строкам содержимое этих первых строк, в том числе текстовое содержимое их нулевого столбца нормально отображалось?