![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Sleep в canvas e [D6]
wandp © (2002-11-14 04:49:00)Помогите, нужно между двумя канвасами поставить задержку.
Пример:
Image1.Canvas.Lineto(100,200);
Sleep();
Image1.Canvas.Lineto(100,500);
Да все прохидит без глюков, но невидно как ресуется первый КАНВАС, а только видно что происходит пауза а затем второй КАНВАС.
Одним словом как сделать чтобы сначала рисолвался один КАНВАС, а затем второй, но так чтобы было видно как они рисуются поочередно. (т.е. необходимо чтобы нарисованная линия промигала определенное время, а затем исчезла)?
Спасибо заранее. wandp@ukr.net
BSD (2002-11-14 11:55:00) [1]А как насчет использовать Refresh?
Image1.Canvas.LineTo(100,100);
Image1.Canvas.Refresh;
Sleep(1000);
Image1.Canvas.LineTo(200,200);
Evgeny V (2002-11-14 06:11:00) [2]делай с TTimer
Timer1.Interval:=...;
Image1.Canvas.Lineto(100,200);
Timer1.Enabled:=true;
while Timer1.Enabled do
begin
Application.ProcessMesagges;
end;
Image1.Canvas.Lineto(100,500);
в событии OnTimer
Timer1.Enabled:=false;
А если хочешь видеть как вообще рисуется линия, рисуй ее по точкам с задержкой (только зачем тебе это видеть, ну да ладно тебе видней :)), через Canvas.Pixels например или LineTo, но по одной точке и др.
PS:Извини, могут быть неточности по синтаксису паскаля, сам пишу на си