Просмотр полной версии : ТАЙМЕР на 4 пакета
se_demon
08.05.2008, 23:02
Долго пытался разобраться, просмотрев все примеры, но так и не смог добиться...
Таймер, как же его всё таки сделать?
Прошу выложить полный код скрипта, который с интервалом в 1 секунду будит выполнять по кругу 4 пакета:
----пауза 1 сек.----
buf:=hstr('1B 01 00 00 00');
----пауза 1 сек.----
buf:=hstr('1B 02 00 00 00');
----пауза 1 сек.----
buf:=hstr('1B 03 00 00 00');
----пауза 1 сек.----
buf:=hstr('1B 04 00 00 00');
____________________________
ПОмогите, пожалуйста.
(не пишите лишнего, ОЧЕНЬ многим пользователям этот пример поможет)
Что не ясного, книжку в руки и вперед :)
//хотя не пойму, а тебе не легче делать делай (задержку) и зициклить процес
type
TForm1 = class(TForm) //кусок из примитивной
Panel1: TPanel; //проги - секундомер,
Timer1: TTimer; //где используется таймер
procedure Timer1Timer(Sender: TObject);
var
Form1: TForm1;min,sec:integer;
procedure TForm1.Timer1Timer(Sender: TObject);
var str,st:string;
begin
if sec = 59 then //вырезка из просто таймера
begin //тебе все не надо главное вот делаеш таймер
inc(min); //а там уже если секунды/минуты равны, тогда...
sec:=0;
end
else
if sec mod 2=0
then st :=' : '+st
else st :=' '+st;
inc(sec);
if Length(st) = 1 then st:='0'+st;
str:=str+ IntToStr (sec);
st:=st+ IntToStr (min);
if Length(str) = 1 then str:='0'+str;
if sec mod 2=0
then str :=' : '+str
else str :=' '+str;
str:=IntToStr (min) +str;
Panel1.Caption:=str;
end
Zergatul
10.05.2008, 19:38
Что не ясного, книжку в руки и вперед :)
//хотя не пойму, а тебе не легче делать делай (задержку) и зициклить процес
type
TForm1 = class(TForm) //кусок из примитивной
Panel1: TPanel; //проги - секундомер,
Timer1: TTimer; //где используется таймер
......
Код не полный, не проинициализироан таймер.
var
Timer1 : TTimer;
q : Integer; // счетчик
procedure Init;
begin
Timer1 := TTimer.Create(nil);
Timer1.Interval := 1000; // задержка таймера 1к мс
Timer1.Enabled := False;
Timer1.OnTimer := @OnTimer; // имя процедуры, которая будет выполнятся при проходе таймера
end;
procedure Free;
begin
Timer1.Free;
end;
procedure OnTimer;
begin
// здесь код, который должен повторятся
Inc(q);
if q = 4 then // если выполнилось уже 4 раза, то останавливаем таймер
Timer1.Enabled := False;
end;
begin
if {умова запуска таймера} then
begin
Timer1.Enabled := True;
q := 0; //счетчик ставим у 0
end;
end.
-=Ma}{imuS=-
12.06.2008, 11:34
if {умова запуска таймера} then
нипонял что там должно было быть написано?
нипонял что там должно было быть написано?
Условие запуска таймера. Почитай книжки по паскалю, многое станет понятно
этот кусочек надо исправить наtype
Timer1 : TTimer;
q : Integer; // счетчик
var
Timer1 : TTimer;
q : Integer; // счетчик
vBulletin® v3.6.11, Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot