![]() |
Uhr nach zeiteingabe läuft nicht
Hallo!
Leider läuft meine uhr nicht nach eingabe meiner zeit... dacht das macht der ttimer...
Delphi-Quellcode:
var mx,my:integer;
hour, min, sec, msec : byte; zeile: string; MyTime: TDatetime; //Uhrzeit stellen----------------------------------------------- Procedure TForm2.Zeit; begin zeile := EdUhr.Text; try hour := StrtoInt(copy(zeile,1,2)); Min := StrtoInt(copy(zeile,4,2)); Sec := StrtoInt(copy(zeile,7,2)); except ShowMessage('Falsche Eingabe'); exit; end; if hour >= 24 then hour := 0; if Min >= 60 then Min := 0; if Sec >= 60 then Sec := 0; MyTime := EncodeTime(hour,min,sec,msec); end; procedure TForm2.Button1Click(Sender: TObject); begin Zeit; end; //digtaluhr und mitte bestimmen-------------------------------- procedure TForm2.Timer1Timer(Sender: TObject); var winkel : real; x, y, r, i: Integer; hour, min, sec, msec : Word; begin Form2.Caption:=TimeToStr(mytime); decodetime(mytime,hour,min,sec,msec); r:=((mx+my)div 4); mx := Width div 2; my := Height div 2; refresh; //Stundenstriche ------------------------------------------ with canvas do begin pen.Width:=3; pen.Color:=clblack; moveto(mx,my-width div 4); lineto(mx,my-width div 5); pen.Width:=3; pen.Color:=clblack; moveto(mx-width div 4,my); lineto(mx-width div 5,my); pen.Width:=3; pen.Color:=clblack; moveto(mx+width div 4,my); lineto(mx+width div 5,my); pen.Width:=3; pen.Color:=clblack; moveto(mx,my+width div 4); lineto(mx,my+width div 5); // Sekundenzeiger------------------------------------------ winkel:=sec* ((2*pi) / 60) - pi/2; x:=Trunc(cos(winkel)*r); y:=Trunc(sin(winkel)*r); x:=x+(mx); y:=y+(my); Canvas.Pen.Color:=clblack; Canvas.Pen.Width:=1; Canvas.MoveTo(mx,my); Canvas.LineTo(x,y); //Minutenzeiger------------------------------------------ winkel:=min* ((2*pi) / 60) - pi/2; x:=Trunc(cos(winkel)*r*0.9); y:=Trunc(sin(winkel)*r*0.9); x:=x+(mx); y:=y+(my); Canvas.Pen.Width:=2; Canvas.MoveTo(mx,my); Canvas.LineTo(x,y); //Stundenzeiger------------------------------------------ IF hour>12 THEN hour:=hour-12; winkel:=(hour*(2*pi) / 12) + (min*(2*pi) / 720) - pi/2; x:=Trunc(cos(winkel)*r*0.8); y:=Trunc(sin(winkel)*r*0.8); x:=x+(mx); y:=y+(my); Canvas.Pen.Width:=3; Canvas.MoveTo(mx,my); Canvas.LineTo(x,y); end; end; end. |
Re: Uhr nach zeiteingabe läuft nicht
Vielleicht ein Missverständnis? Ein Timer löst periodisch den Timer-Event aus. Dabei hält er ungefähr das Zeitintervall ein. Die aktuelle Uhrzeit erhälst du mit Now.
|
Re: Uhr nach zeiteingabe läuft nicht
genau bei now läuft die zeit....
|
Re: Uhr nach zeiteingabe läuft nicht
Timer1.Enabled = TRUE?
|
Re: Uhr nach zeiteingabe läuft nicht
Hallo!
Nur um's zum Laufen zu bringen: Setze mal die Uhrzeit im OnTimer:
Delphi-Quellcode:
Dann könnte es gehen.
MyTime := now;
Gruß, Zugi |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz