![]() |
For und While Bedingungen
Hi Leute,
Ich habe folgendes Problem: 1.Wenn ich bei Delphi 7 Enterprise mit einer While Bedingung arbeiten will schmiert der immer ab und reagiert nicht mehr. Woran könnte das liegen? und 2.Habe ich das Problem, dass bei meinem eigentlich ziemlich simplen Quelltext beim Ausführen immer die gelbe und die rote Lampe gleichzeitig leuchten obwohl die rote viel früher anfangen sollte.Woran liegt das?
Delphi-Quellcode:
procedure TForm_Baustelle.Button_StartClick(Sender: TObject);
begin Zaehler:=0; Timer.Enabled:=True; rot1.Brush.Color:=clWhite; gelb1.Brush.Color:=clWhite; gruen1.Brush.Color:=clWhite end; procedure TForm_Baustelle.TimerTimer(Sender: TObject); begin Zaehler:=Zaehler+1; For Zaehler:=1 to 16 do rot1.Brush.Color:=clRed; For Zaehler:=14 to 16 do gelb1.Brush.Color:=clYellow; |
Re: For und While Bedingungen
Hi inttostr-Help-,
Delphi-Quellcode:
Wenn du abfragen willst ob Zaehler zwischen 1 und 16 liegt, dann musst du es so machen:
For Zaehler:=1 to 16 do rot1.Brush.Color:=clRed;
For Zaehler:=14 to 16 do gelb1.Brush.Color:=clYellow;
Delphi-Quellcode:
Greetz
if (Zaehler >= 1) and (Zaehler <= 16) then
rot1.Brush.Color := clRed; if (Zaehler >= 16) and (Zaehler <= 16) then gelb1.Brush.Color := clYellow; alcaeus |
Re: For und While Bedingungen
Zitat:
2. Wenn du uns dazu nicht ein bissle Quellcode präsentiert können wir dir nicht helfen. Ich schaue grade mal in meine Glaskugel, aber sehe nur, dass es noch viel zu früh ist :gruebel: :mrgreen: |
Re: For und While Bedingungen
Hallo,
Du wirfst for und if durcheinander. For x:=1 to 16 do heisst, dass die Variable x zuerst den Wert X=1 annimmt, dann den Wert 2 .. 16. Ich empfehle dir dringend eine Tutorial Delphi für Anfänger. (Ist ganz ernst gemeint) Rainer |
Re: For und While Bedingungen
Delphi-Quellcode:
Wenn ich diesen Quellcode so benutze geht die Lampe aber nicht aus wenn der Zaehler größer als 16 ist. Woran liegt das?
if (Zaehler >= 1) and (Zaehler <= 16) then
rot1.Brush.Color := clRed; if (Zaehler >= 16) and (Zaehler <= 16) then gelb1.Brush.Color := clYellow; |
Re: For und While Bedingungen
Hi,
if (Zaehler >= 16) and (Zaehler <= 16) then ist nur true für Zaehler=16...... :roll: Gruß Stephan :dance: |
Re: For und While Bedingungen
*post gelöscht*
|
Re: For und While Bedingungen
Zitat:
Delphi-Quellcode:
und noch n
if (Zaehler >= 14) and (Zaehler <= 16) then // wenn zähler größer oder gleich 14 UND kleiner oder gleich 16 dann
gelb1.Brush.Color := clYellow; // Lampe gelb1 auf gelb
Delphi-Quellcode:
if (Zaehler > 16) then // wenn zähler größer 16 dann
begin gelb1.Brush.Color:=clWhite; // Lampe wieder White rot1.Brush.Color :=clWhite; // Lampe wieder White end; |
Re: For und While Bedingungen
Zitat:
Wo ich wohl mit meinen Gedanken war :gruebel: Greetz alcaeus [add]@inttostr-Help-: bevor du noch weiter rumratest, solltest du dir wirklich einige einfache Tutorials zum Thema if-Abfragen und Schleifen raussuchen.[/add] |
DP-Maintenance
Dieses Thema wurde von "Sharky" von "Programmieren allgemein" nach "Object-Pascal / Delphi-Language" verschoben.
"Programmieren Allgemein" ist ja für Fragen die NICHTS mit Delphi zu tun haben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 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 by Thomas Breitkreuz