hi erstmal! tut mir leid falls ich ins falsche forum schreibe oder eine total dumme frage stele - aber ich bin ein ziemlicher delphi-noob
naja ich bin in der 11. Klasse und wir haben in Informatik grade mit delphi angefangen (haben vorher Turbo Pascal gemacht), jetzt sollen wir eine Ampel programmieren, die beim Klicken eines buttons einen "status" weitergeht, also grün -> gelb -> rot -> rot-gelb -> grün und so weiter. Das ganze soll mit visible:=true bzw. false und if, then, else gemacht werden!
Ich versuche das jetzt schon Stundenlang aber ich kriegs einfach nicht hin, vielleicht könnt ihr mir ja sagen wo in meinem Programm der Fehler ist.
Das ist die Prozedur die ich momentan gemacht hab - wenn ich das Programm starte, schaltet er aber nur zwischen grün und rot+gelb um
Delphi-Quellcode:
procedure TForm1.switchClick(Sender: TObject);
begin
if Form1.sh_red.visible=true and Form1.sh_yellow.visible=true and Form1.sh_green.visible=false
then begin Form1.sh_red.visible:=false; Form1.sh_yellow.visible:=false; Form1.sh_green.visible:=true; end else
IF Form1.sh_red.visible=false and Form1.sh_yellow.visible=true and Form1.sh_green.visible=false
then begin Form1.sh_red.visible:=true; Form1.sh_yellow.visible:=false; Form1.sh_green.visible:=false; end else
IF Form1.sh_red.visible=false and Form1.sh_yellow.visible=false and Form1.sh_green.visible=true
then begin Form1.sh_red.visible:=false; Form1.sh_yellow.visible:=true; Form1.sh_green.visible:=false; end else
IF Form1.sh_red.visible=true and Form1.sh_yellow.visible=false and Form1.sh_green.visible=false
then begin Form1.sh_red.visible:=true; Form1.sh_yellow.visible:=true; Form1.sh_green.visible:=false; end else
end;