Форум: "KOL";
Текущий архив: 2015.01.11;
Скачать: [xml.tar.bz2];
ВнизCanvas Найти похожие ветки
← →
Инна (2009-10-30 10:35) [0]создается для контролов и картинок всегда или только если есть обращение к нему в коде?
← →
mdw © (2009-10-30 11:41) [1]А исходников у Вас нет?
При обращении.
← →
Инна (2009-10-30 11:45) [2]нафига рыца в исходниках когда можно спросить конкретно у кто знает ?
← →
miek (2009-10-30 12:02) [3]Канва - это обертка для HDC. Создается только для контролов, у которых есть свое окно. Подробнее нужно смотреть в коде контрола. В VCL практикуется стиль lazy allocation, т.е. при обращении.
← →
Инна (2009-10-30 12:10) [4]а вот например в онпаинт передается DC , если его использовать канва создасца и тут вобще по другому ?
← →
Инна (2009-10-30 12:16) [5]не хочу чтоб всякие обертки для GDI создавались вообще, что для етого нужно\ненужно делать ?
← →
Инна (2009-10-30 12:54) [6]проверила
создается при онпаинт и кустомдраве
как понимаю , чтоб от него отвязаться нужно делать свою обработку в онмесаже, правильно ?
← →
mdw © (2009-10-30 13:52) [7]
> создается при онпаинт и кустомдраве
А внимательно смотрели? Не создается.
← →
Инна (2009-10-30 14:07) [8]а чего и куда смотреть ?
брекпоинт ставиш на newcanvas и все
пока у меня онпаинт и кустомдрав использовался ,брекпоинт срабатывал
← →
Инна (2009-10-30 14:10) [9]ну мошт онпаинт не создает, а кустомдрав полюбому
← →
Инна (2009-10-30 14:14) [10]кстати к чему я все это
при выводе через канвас, используя Lineto и moveto у меня нагрузка на проц в 2-3 раза выше чем с чистым GDI
← →
mdw © (2009-10-30 14:25) [11]
> кустомдрав
Это LVCustomDraw? Попробуйте убрать строчку Sender.Canvas;. Возможно она никчему.
← →
Инна (2009-10-30 14:33) [12]
> Это LVCustomDraw
да
function TForm1.MusicLVCustomDraw(Sender: PControl; DC: HDC;
Stage: Cardinal; ItemIdx, SubItemIdx: Integer; const Rect: TRect;
ItemState: TDrawState; var TextColor, BackColor: Integer): Cardinal;
begin
if (Stage<>CDDS_PREPAINT)and(Stage<>CDDS_ITEMPREPAINT) then begin
if qqq(DYN.list.ItemS[ItemIdx]^).Group then BackColor:=$00FCF4ED;
if qqq(DYN.list.ItemS[ItemIdx]^).Mask and 8 <> 0 then TextColor:=$00AD5A5A;
if qqq(DYN.list.ItemS[ItemIdx]^).Mask and 16 <> 0 then TextColor:=$004848E3;
if qqq(DYN.list.ItemS[ItemIdx]^).Mask and 4 <> 0 then TextColor:=clGreen;
end ;
result:=CDRF_NOTIFYITEMDRAW;
end;
> Попробуйте убрать строчку Sender.Canvas
в где ее убрать ?
в понедельник попробую
← →
mdw © (2009-10-30 14:49) [13]KOL.pas
function WndProc_LVCustomDraw(..);
← →
Игорь Шевченко © (2009-10-30 22:25) [14]http://ln.com.ua/~openxs/articles/smart-questions-ru.html
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2015.01.11;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.001 c