Ha das sieht ja schonmal ganz gut aus und ist sicher ausbaufähig
Ich würd mal die erste Seite lassen und ein komplett neues Formular machen. Dann hast du einerseits immer noch eine funktionierende erste Seite und du hast eine Vorlage für deine Ampel mit Fussgängerfunktion. Kopier einfach alle Komponenten des ersten Formulars auf dein 2. Formular und ergänze deine Ampel um eine Fussgängeranzeige und einem zusätzlichen Button. Dann brauchst du noch einen zusätzlichen Timer für die Fussgängerperiode.
Wenn du dann davor bist eine gesamte Ampelanlage simulieren zu wollen und deine erste Lösung anschaust, wirst du bemerken, das deine sichtbaren Komponenten an die Steuerung der Ampel direkt gebunden sind. Das kann man sicher so machen, nur wird es sehr schwierig diese Art von Code zu erweitern. Besser wäre es jetzt vielleicht für dich, wenn du dir eine Procedure überlegen würdest, die du zur Kontrolle der Anzeige benutzen kannst, zb. "AmpelAnzeigen" mit Parametern für die Angabe der anzuzeigenden Signale (rot, gelb, grün). Diese kannst du in deiner Steuerung (Timer) aufrufen.
Da du aber nicht mehr die Shapes als Information über deinen Ampelstatus verwenden solltest, musst du dir dafür etwas anderes überlegen, zb. könntest du alle Ampelzustände (grün, gelb, rot, rotgelb) als Reihe betrachten, die nacheinander alle Zustände durchschaltet.
Versuch dich jetzt aber mal zuerst in der Fussgängererweiterung und arbeite dich dann Schritt für Schritt an bessere Lösungen für deine Probleme heran