Forum: Object-Pascal / Delphi-Language
Delphi
by Matze,
7. Nov 2009
Und jetzt schreibe bitte nicht wieder du hättest alles hier genau gelesen. Wie du siehst, hast du es nicht. Klicke den Link an und lies, was dort steht, dann weißt du wieso.
Forum: Object-Pascal / Delphi-Language
Delphi
by Matze,
4. Nov 2009
Rein theoretisch gibt's zig Möglichkeiten, eine könnte so aussehen:
var
Ampelzustand: Integer;
// ...
// Rot
if Ampelzustand = 1 then
Ampelzustand := 2;
Forum: Object-Pascal / Delphi-Language
Delphi
by Matze,
4. Nov 2009
Wofür denn ein weiteres Image? Es gibt doch nur 3 Lämpchen und somit 3 Images:
if (ImgRot.Visible) and (ImgGelb.Visible) then
// Rot/Gelb
else if ImgRot.Visible then
// Rot
else if ImgGelb.Visible then
// Gelb
else if ImgGruen.Visible then
// Grün
Forum: Object-Pascal / Delphi-Language
Delphi
by Matze,
4. Nov 2009
Dein Problem lösen 2 zusätzliche "else". Das wurde bereits genannt und sogar von Deddy erklärt.
Was du machst, ist eine Ampel, wie man sie im Kindergarten malt: Rot - Gelb - Grün. Tatsächlich sind die Ampeln bei uns Rot - Rot/Gelb - Gelb - Grün (du scheinst Beiträge nur zu überfliegen, wenn überhaupt ...)
Aber das war nur ein Hinweis. Wenn du es nicht an die Realität anlehnen willst, musst...
Forum: Object-Pascal / Delphi-Language
Delphi
by Matze,
4. Nov 2009
Richtig (Erklärung, s. meinen Beitrag).
Zum "= true": Über den Umgang mit Boolean
Edit: s. auch Wikipedia: Ampel
Forum: Object-Pascal / Delphi-Language
Delphi
by Matze,
4. Nov 2009
Stimmt, dann trägt mein Beitrag (entgegen meiner Aussage) doch zur Lösung des Problems bei. :lol:
Forum: Object-Pascal / Delphi-Language
Delphi
by Matze,
4. Nov 2009
Hallo,
ein paar Kleinigkeiten, die mit dem Problem nichts zu tun haben.
Überprüfe nie auf "true", auch wenn es in dem Fall geht. Schreibe es so:
if Ampel1Ro.Visible then
Das hier ist übrigens falsch: