Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| procedure TForm1.Button1Click(Sender: TObject); begin randomize; try Frage := random(15) +10 ; label1.Caption := inttostr(Frage); edit1.SetFocus; eingabe:= strtoint(edit1.Text); label3.Caption := inttostr(Frage*Frage); label4.Caption := inttostr(eingabe); if eingabe = frage*frage then label2.Caption := 'Glück gehabt' else label2.Caption := 'Hmmm'; except end; end;
end. |
mal noch einige Tips zum Design:
- verzichte am Anfang auf Fehlerbehandlung. Du solltest dazu später ein gutes Buch lesen.
Fehlerbehandlungen würde ich einbauen, wenn dein Programm getestet ist und unter Normalbedingungen sauber läuft
- Für jede Aktion solltest Du einen Event verwenden. (am Einfachsten ist dies am Anfang mit ButtonClick) später kannst Du dann auch Events wie OnShow, OnCreate ... verwenden.
- "edit1.SetFocus;" Nicht Du steuerst das Programm, sondern der Anwender am Monitor. Wenn er den Fokus auf das Edit Feld setzen möchte, wird er es tun.
- Verwende "sprechende" Ausgaben "Hmmm" sagt dem Nutzer eigentlich was?
- Dokumentiere deine Quellen
meine abgeänderte Variante. (ungetestet)
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: 24:
| procedure TForm1.Button1Click(Sender: TObject); begin Frage := random(15) +10 ; label1.Caption := inttostr(Frage); label3.Caption := inttostr(Frage*Frage); end;
procedure TForm1.Button2Click(Sender: TObject); begin eingabe:= strtoint(edit1.Text); label4.Caption := inttostr(eingabe); if eingabe = (frage*frage) then label2.Caption := 'Du hast '+inttostr(eingabe)+ ' eingegeben. Glück gehabt' else label2.Caption := 'Du hast '+inttostr(eingabe)+ ' eingegeben. Hmmm'; end;
procedure TForm1.Button3Click(Sender: TObject); begin randomize; end; |
Ich bin mir über den Sinn des Programms noch nicht ganz im klaren.