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

Вниз

Работа с Canvas   Найти похожие ветки 

 
Mr_Hunter   (2002-05-30 15:54) [0]

Господа мастера! Помогите решить вот какую проблему.
На Canvase нарисована (к примеру) окружность. На OnMouseMove повешен обработчик: при движении мыши перемешать окружность в то место где в тек момент находиться мышь. Но при перерисовке идет мерцание! Вопрос можно ли от него избавиться и как!! Хорошо бы работающий пример!
Заранее спасибо.


 
Song ©   (2002-05-30 15:59) [1]

А как рисуете окружность?


 
AlexanderSK ©   (2002-05-30 16:01) [2]

Расскажи конкретнее как ты ее перерисовываеш?


 
MaximatorVeter ©   (2002-05-30 16:11) [3]

Как мне кажется в этом случаи всегда будет заметно мигание.
А вот если использовать API DirectX, то точно мигать не будет.


 
int64 ©   (2002-05-30 17:51) [4]

Надо виртуальный битмап юзать. Вот набросал.

var
Form1: TForm1;
Bitmap: TBitmap;
R: TRect;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
R:= Rect(10, 10, 50, 50);
Bitmap:= TBitmap.Create;
Bitmap.Height:= Height;
Bitmap.Width:= Width;
Bitmap.Canvas.Brush.Color:= Color;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
Bitmap.Free;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
const incr = 5;
var TempRect: TRect;
begin
TempRect:= R;
R:= Rect(R.Left+incr, R.Top, R.Right+incr, R.Bottom);
UnionRect(TempRect, TempRect, R);
Bitmap.Canvas.FillRect(TempRect);
Bitmap.Canvas.Ellipse(R);
Canvas.CopyRect(TempRect, Bitmap.Canvas, TempRect);
end;


Дерзай.



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

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

Наверх




Память: 0.47 MB
Время: 0.011 c
14-30994
mifi
2002-05-06 19:50
2002.06.10
пошарив DLL выдала все функции


1-30802
Янушка
2002-05-31 11:44
2002.06.10
Как изменить цвет у заголовка окна формы


1-30819
Kaldr
2002-05-31 11:46
2002.06.10
Исключ. ситуац.


6-30952
Vas1
2002-03-27 09:32
2002.06.10
Как определить, что ко мне по сети кто-то подцепился


1-30915
DiHLoS
2002-05-29 18:49
2002.06.10
Перекодировка Win в Dos