Ja, du musst an der Stelle wo du die Stäbe weg nimmst auch die Bilder ausblenden. Beim Einblenden gehst du mit der Schleife alle Indizes der Bilder durch. Wobei du das auch optimieren kannst.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| procedure TForm1.FormCreate(Sender: TObject); begin Randomize; Button_NeuClick(Sender); end;
procedure TForm1.Button_NeuClick(Sender: TObject); begin staebe := Random(71) + 30; Label1.Caption := IntToStr (staebe); Edit1.Text := ''; Label2.Caption := ''; Label3.Caption := ''; Button_Nehmen.Enabled := true; Button_Rechner.Enabled := true; Label4.Visible := true; Label4.Caption := 'Wählen Sie hier aus wer beginnt' ; for k := 1 to staebe do begin Image := 'Image' + IntToStr(k); TImage(Form1.FindComponent(Image)).Visible := true; end; end; |
Für die Schleife kannst du ja direkt den Wert nehmen statt den aus dem Label zurückzukonvertieren.
Ja, und das Ausblenden muss ja bei dieser Zeile passieren:
Delphi-Quelltext
1:
| staebe := staebe - eingabe; |
Und zwar müssen die Bilder
staebe bis
staebe - eingabe + 1 ausgeblendet werden. Das riecht doch nach einer weiteren for-Schleife.
Das Wegnehmen von dir und dem PC kannst du auch zusammenfassen.
Das sind nur Vorschläge, kein Muss:
Nebenbei solltest du dir vielleicht einmal den Styleguide für das Schreiben von Quelltext anschauen. Wenn du überall richtig einrückst, ist der Code gleich sehr viel besser lesbar.
Immerhin hast du die Buttons schon benannt.

Unterstriche sind aber nicht so gut, besser wäre z.B. einfach ButtonNeu oder btnNeu (btn für Button).
Für die Schreibweise von Delphi-Quelltext gibt es hier einen Styleguide:
dn.codegear.com/article/10280 (englisch)
www.delphi-treff.de/delphi-styleguide/ (deutsch)