Форум: "Начинающим";
Текущий архив: 2008.09.07;
Скачать: [xml.tar.bz2];
ВнизTImageList Найти похожие ветки
← →
ванъка (2008-07-27 13:46) [0]Когда я указываю например у TListView.SmallImages = MyImageList, каким образом TListView во время работы получает иконки которые отрисовывает? Я смотрел в исходниках TListView но не смог понять.
У меня такая задача: я хочу перекрыть в наследнике ImageList то, что вызывает TListView при отрисовке иконок.
← →
{RASkov} © (2008-07-27 14:17) [1]По моему и TImageList и TListView - это "виндовые штуки" и отрисовка этих самых иконок происходит не в VCL....
← →
Alucard (2008-07-28 22:35) [2]TImageList это обертка вокруг виндового объекта ImageList. TImageList.Handle соотвествует хендлу ImageList-а, что позволяет взаимодействовать с ним на уровне API. TListView - также обертка вокруг контрола ListView, однако его рисование можно переопределить, обрабатывая события OnCustomDraw<...>.
Не столь важно, как именно ListView получает картинки из ImageList-а, важно как он их рисует, а делает он это с помощью функции BitBlt, которую Вы можете использовать и сами, храня картинки в несвязанном TImageList-е и обрабатывая упомянутые выше события.
В этом смысле, возможно, имеет смысл делать наследника от TCustomImageList, чтобы не отягощать хранилище картинок со связью с обектом Windows. У меня нет перед собой VCL, но если верно помню, TCustomImageList еще не реализует Handle и является простым классом VCL.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.09.07;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c