Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.035 c
7-1080213943
jetty
2004-03-25 14:25
2004.04.11
Секундомер (от системного таймера)


9-1071875450
HolyMan
2003-12-20 02:10
2004.04.11
Определение FreeForm


4-1078858366
TankMan
2004-03-09 21:52
2004.04.11
Как закрасить MainMenu?


9-1070561177
Omar2002
2003-12-04 21:06
2004.04.11
Батл нет в своей игре!


3-1079512826
Rule
2004-03-17 11:40
2004.04.11
Не могу разобратся с разделителемя дробной части в FB 1




   Наверх