Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Очистка Canvas   Найти похожие ветки 

 
Destroyer   (2004-03-26 23:45) [0]

Моя программа рисует на форме график. При изменении размера формы, график перерисовывается, но старый остается. Как обновлять canvas, т.е. стирать все с него?


 
Mihey ©   (2004-03-27 00:00) [1]

Нужно заливать каким-то цвтом канву, например, FillRect, или работать с TBitmap - там можно и быстрее, через Scanline:

CONST
 PixelCountMax = 32768;

TYPE
 pRGBTripleArray = ^TRGBTripleArray;
 TRGBTripleArray = ARRAY[0..PixelCountMax-1] OF TRGBTriple;

var
Bmp: TBitmap;

procedure Do;
var x, y: Integer;
   i: Integer;
   Row: pRGBTripleArray;
begin
 FOR y := 0 TO Bmp.Height-1 DO
 BEGIN
   Row := Bmp.Scanline[y];
   FOR x := 0 TO Bmp.Width-1 DO
   BEGIN
     WITH Row[x] DO
     BEGIN  // (255; 255; 0) - жёлтый
       rgbtRed   := 255;
       rgbtGreen := 255;
       rgbtBlue  :=   0;
     END
   END
 END;
end;


 
Mihey ©   (2004-03-27 00:54) [2]

Да, и кстати для D6-ников:

http://delphimaster.net/view/8-1080224905/

см. способы от dmk.


 
Defunct ©   (2004-03-27 04:30) [3]

Destroyer   (26.03.04 23:45)  

Хотите чтобы график отображался плавно? Тогда формируйте график на отдельном Bitmap.Canvas и потом отрисовывайте всю картинку через Canvas.Draw



Страницы: 1 вся ветка

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
14-1082542987
begAdm
2004-04-21 14:23
2004.04.11
Здесь много людей знающих компьютерную литературу


1-1079891707
Oleg_
2004-03-21 20:55
2004.04.11
Активизация вебброузера программная


14-1082358874
Cosinus
2004-04-19 11:14
2004.04.11
Поздравьте меня с моим первым полученным спамом по SMS.


4-1075411194
pirat
2004-01-30 00:19
2004.04.11
как поставить TrackMouseEvent ?


1-1082451955
gauss
2004-04-20 13:05
2004.04.11
XML Parser?