Back
...

Subject: d2,3: как заморозить отрисовку на время отрисовки ?
Date: Tue, 04 Aug 98 14:25:43 +0300
From: Dima Rezhko <Dima.Rezhko@p23.f3.n4626.z2.fidonet.org>
Organization: Пытка апельсинами продолжалась 3-й час...
Newsgroups: fido.ru.delphi
References: 1

Привет, P›v?l!
Случилось так, что 03 Aug 98 11:35:34 некто P›v?l Ch?rk›?v писал к All
PC> Hi All;
PC> Есть вопpос на тему d2,3: как заморозить отрисовку на время отрисовки ?.
PC>
PC> Короче,у меня строится скажем так большой график, иногда с элементами
PC> анимации... Считается не то чтоб долго, но неинтересно смотреть на
PC> строящиеся линии... Как сделать так, чтоб отрисовка была типа как
PC> покадрам - где-то нарисовалось, а потом бац - и сразу на экран.. рисую
PC> на paintbox.

За точность не ручаюсь, но что-то в этом роде:

procedure TForm.PaintboxPaint(Sender: TObject); // обработчик OnPaint Paintboxa
var Bitmap: TBitmap

begin
Bitmap:=TBitmap.Create;
Bitmap.Width:=Paintbox.Width;
Bitmap.Height:=PaintBox.Height;

DrawSomething(Bitmap.Canvas); // Рисуем что-то на канвасе Bitmapa
Paintbox.Canvas.Draw(0, 0, Bitmap); // Отображаем Bitmap

Bitmap.Free;
end;

Всего наилучшего,
Дима.

23.01.99 20:00:14