![]() |
Re: Brauche Hilfe zu Threads
Wann weist du denn Sec zu? Das steht nämlich nicht in dem, was du gepostet hast.
|
Re: Brauche Hilfe zu Threads
procedure TForm1.Timer2Timer(Sender: TObject);
var hour,min,sec,msec:Word; begin // ######## Das Folgende ist nur ein vereinfachter Test #### //Pendel Canvas.Pen.Width := 6; Canvas.Pen.Color := clBlack; if sec mod 2 = 1 then begin |
Re: Brauche Hilfe zu Threads
Hallo,
vielleicht solltest Du noch dies
Delphi-Quellcode:
in Deiner Timer Routine aufrufen.
DecodeTime(Now,hour,min,sec,msec);
Denn sec wird nie ein Wert zugewiesen (wie Phillip schon richtig angemerkt hat), er wird nur abgefragt. Grüße Klaus |
Re: Brauche Hilfe zu Threads
Hatte ich schon mal drin. Wieder eingefügt, kein Ergebnis.
Pendelscheiben-BMP durch Canvas.Ellipse(x1,y1,x2,y2); ersetzt, kein Ergebnis. Nur Pendelstab als LineTo, kein Ergebnis. Es bleibt dabei: Uhrzeiger und Pendel "beissen sich". Bin ziemlich verzweifelt, aber das gehört wohl dazu! |
Re: Brauche Hilfe zu Threads
Timer2 sieht jetzt so aus:
Delphi-Quellcode:
procedure TForm1.Timer2Timer(Sender: TObject);
var Now,hour,min,sec,msec: Word; begin // ######## Das Folgende ist nur ein vereinfachter Test mit 2 Zuständen#### //Pendel DecodeTime(Now,hour,min,sec,msec); Canvas.Pen.Width := 6; Canvas.Pen.Color := clBlack; if sec mod 2 = 1 then begin Canvas.Moveto(139, 215); Canvas.LineTo(157,348); Canvas.Ellipse(132,348,182,398); end else begin Canvas.Moveto(129, 215); Canvas.LineTo(112,348); Canvas.Ellipse(87,348,137,398); end; end; |
Re: Brauche Hilfe zu Threads
Delphi-Quellcode:
now ist eine Funktion in Delphi, ich weiß nicht was passiert wenn
procedure TForm1.Timer2Timer(Sender: TObject);
var Now,hour,min,sec,msec: Word; begin // ######## Das Folgende ist nur ein vereinfachter Test mit 2 Zuständen#### //Pendel DecodeTime(Now,hour,min,sec,msec); Du den gleichen Namen nochmals als Variable benutzt. Vielleicht ist es besser so:
Delphi-Quellcode:
Grüße
procedure TForm1.Timer2Timer(Sender: TObject);
var hour,min,sec,msec: Word; begin // ######## Das Folgende ist nur ein vereinfachter Test mit 2 Zuständen#### //Pendel DecodeTime(Now,hour,min,sec,msec); Klaus |
Re: Brauche Hilfe zu Threads
Ich habe es auch mal ohne Now versucht, denn in der Hilfe steht nur DecodeTime(hour, min, sec, msec),
aber dann kann wegen "[Fehler] Uhr1.pas(124): Nicht genügend wirkliche Parameter" nicht kompiliert werden. Merkwürdig, aber mit "now" wird kompiliert. Zwischendurch möchte ich mich für Eure Geduld bedanken! |
Re: Brauche Hilfe zu Threads
Nun, decodeTime benötige auch fünf Parameter,
das habe ich auch nicht kritisiert. Du kannst now weiterhin in DecodeTime verwenden, aber schmeiß es doch einmal aus der Variablendeklaration raus. So wie ich es vorherigen Beitrag geschrieben habe. Grüße Klaus |
Re: Brauche Hilfe zu Threads
Habe ich gemacht, ändert aber nichts am Problem.
|
Re: Brauche Hilfe zu Threads
Das folgende pendelt bei mir aber richtig gut.
Grüße Klaus
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var hour,min,sec,msec: Word; begin // ######## Das Folgende ist nur ein vereinfachter Test mit 2 Zuständen#### //Pendel DecodeTime(Now,hour,min,sec,msec); Canvas.Pen.Width := 6; Canvas.Pen.Color := clBlack; if sec mod 2 = 1 then begin Canvas.Moveto(139, 215); Canvas.LineTo(157,348); Canvas.Ellipse(132,348,182,398); Canvas.Pen.Color:= clWhite; Canvas.Moveto(129, 215); Canvas.LineTo(112,348); Canvas.Ellipse(87,348,137,398); end else begin Canvas.Moveto(129, 215); Canvas.LineTo(112,348); Canvas.Ellipse(87,348,137,398); Canvas.Pen.Color:= clWhite; Canvas.Moveto(139, 215); Canvas.LineTo(157,348); Canvas.Ellipse(132,348,182,398); end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:37 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