Главная страница
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.034 c
1-1080043482
Kirill Bezrukov
2004-03-23 15:04
2004.04.11
BPL (Пакеты) !Build with run time packages


14-1081918872
New_user
2004-04-14 09:01
2004.04.11
Изменение работы кнопки "Пуск"


14-1079549730
Alikm
2004-03-17 21:55
2004.04.11
Помогите с ответом!


1-1080040855
Alexis
2004-03-23 14:20
2004.04.11
Очень нужна помощь! Двусвязные списки...(Pascal)


4-1074512776
Max003
2004-01-19 14:46
2004.04.11
Как вызвать процедуру из чужой программы