Вверх ↑
Ответов: 4612
Рейтинг: 746
#1: 2019-05-30 15:58:22 ЛС | профиль | цитата
Зависит от того каким образом получаешь результаты работы метода. Если через поля класса ThiMTStrTbl - тоже сильно раздувается. Предполагаю из метода можно выдавать наружу record с полученными значениями и их уже использовать в обработчике.
Меня вот это ещё смущает:
else if (Stage = CDDS_SUBITEM or CDDS_ITEMPREPAINT) or (Stage = CDDS_ITEMPOSTPAINT)
and ((Sender.LVStyle = lvsDetail) or (Sender.LVStyle = lvsDetailNoHeader)) then
begin

То-есть, два разных этапа отрисовки обрабатываются в одном блоке. Это, думаю, во-первых, может приводить к двойной отрисовке. Во-вторых, один этап предназначен для рисования, второй - для освобождения ресурсов (или первый для подготовки, а второй - рисования) насколько я понимаю. Но могу и ошибаться.
карма: 26

0
Редактировалось 1 раз(а), последний 2019-05-30 15:59:41