Hogyan tudok időzítőt írni lazarusba?
delay( várakozás értéke milliszekben )
pl delay(1000);
itt megakad a program futása, amíg le nem telik az idő
amúgy valahogy így nézne ki:
procedure TForm1.Button1Click(Sender: TObject);
var h,min,sec,result,i,rest: integer;
begin
h:=StrToInt(hTEdit.text);
min:=StrToInt(minTEdit.text);
sec:=StrToInt(secTEdit.text);
result:=h*3600+min*60+sec;
for i:=result downto 0 do
begin
rest:=i;
h:=rest DIV 3600;
res:=rest MOD 3600;
min:=rest DIV 60;
res:=rest MOD 60;
sec:=rest;
hTEdit.Caption:=IntToStr(h);
minTEdit.Caption:=IntToStr(min);
secTEdit.Caption:=IntToStr(sec);
delay(1000);
end;
Felteszel a TTimer komponenst, a System palettán találod. Nem sok property-je - tulajdonsága van:
Enabled: Értéke True - False - futhat vagy nem az 'időzítő'
Interval: Időzítés mértéke ms-ben
Name: Értelemszerűen a neve
Tag: Egy fejlesztési, akármilyen célokra is használható. elvileg Longint típusú változó.
Amiben eltér a Delphi és a Lazarus.
Az eseményeknél a Delphi-ben csak az onTimer eseményt 'jegyzik', ez egy eljárás ami lefut ciklikusan az interval függvényében. Lazarusban játszik még az onStartTimer és az onStopTimer esemény is értelemszerűen ki lehet következtetni melyik mire jó.
Írtam neked egy demót:
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!