Kezdőoldal » Számítástechnika » Programozás » Hogyan tudok időzítőt írni...

Hogyan tudok időzítőt írni lazarusba?

Figyelt kérdés
Free pascalban otthon vagyok, de lazarussal csak most kezdtem el ismerkedni és valahogy for ciklusos megoldás nekem nem működött. Szóval egy beviteli mezőbe beírok egy számot és abban a mezőben számoljon vissza az adott számtól (másodperc). Nem hangzik bonyolultnak, de valahogy kifog rajtam mégis.

2015. máj. 22. 21:03
 1/10 anonim ***** válasza:

delay( várakozás értéke milliszekben )

pl delay(1000);

itt megakad a program futása, amíg le nem telik az idő

2015. máj. 22. 21:51
Hasznos számodra ez a válasz?
 2/10 SimkoL ***** válasza:
Ha Lazarus akkor a TTimer komponenes - akárcsak Delphi-ben -
2015. máj. 22. 21:54
Hasznos számodra ez a válasz?
 3/10 SimkoL ***** válasza:
Ha Windows alá próbálkozol Lazarussal akkor javaslom inkább egy Delphi 7 beszerzését - kimondottan - mivel lényegesen kisebb exe-t készít, eszméletlen mennyiségű komponens létezik hozzá és lényegesen gyorsabb mint a Lazarus.
2015. máj. 22. 22:20
Hasznos számodra ez a válasz?
 4/10 A kérdező kommentje:
Delay-t már próbáltam, de ami FP-be működik az itt el se indítja a for ciklust. Erről a TTimerről mondjuk még nem hallottam de mindjárt utána nézek...
2015. máj. 22. 22:32
 5/10 A kérdező kommentje:

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;

2015. máj. 22. 22:43
 6/10 SimkoL ***** válasza:

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ó.

2015. máj. 22. 22:43
Hasznos számodra ez a válasz?
 7/10 SimkoL ***** válasza:
A Delay()-t most felejtsd el, mert az megakasztja a program futását.
2015. máj. 22. 22:46
Hasznos számodra ez a válasz?
 8/10 A kérdező kommentje:
köszönöm szépen!
2015. máj. 22. 23:23
 9/10 SimkoL ***** válasza:
Szívesen segítek máskor is, - a Delphi a szívem csücske -.
2015. máj. 22. 23:30
Hasznos számodra ez a válasz?
 10/10 SimkoL ***** válasza:

Írtam neked egy demót:

[link]

2015. máj. 23. 10:16
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!