Форум: "WinAPI";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];
ВнизSleep в canvas e Найти похожие ветки
← →
wandp (2002-11-14 04:49) [0]Помогите, нужно между двумя канвасами поставить задержку.
Пример:
Image1.Canvas.Lineto(100,200);
Sleep();
Image1.Canvas.Lineto(100,500);
Да все прохидит без глюков, но невидно как ресуется первый КАНВАС, а только видно что происходит пауза а затем второй КАНВАС.
Одним словом как сделать чтобы сначала рисолвался один КАНВАС, а затем второй, но так чтобы было видно как они рисуются поочередно. (т.е. необходимо чтобы нарисованная линия промигала определенное время, а затем исчезла)?
Спасибо заранее. wandp@ukr.net
← →
Evgeny V (2002-11-14 06:11) [1]делай с 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:Извини, могут быть неточности по синтаксису паскаля, сам пишу на си
← →
BSD (2002-11-14 11:55) [2]А как насчет использовать Refresh?
Image1.Canvas.LineTo(100,100);
Image1.Canvas.Refresh;
Sleep(1000);
Image1.Canvas.LineTo(200,200);
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2002.12.30;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.007 c