Moin,
und zwar bin ich gerade dabei ein Quiz zu erstellen. Jedoch habe ich da einige kleine Probleme.
Das Quiz soll wie ein Multiple Choice Test werden, also 1 Frage 4 Antworten und genau eine Antwort davon ist richtig. Nun habe ich die Frage in einem Label und die Antworten in RadioButtons (ich habe erstmal 2 genommen zum Testen). Button1 ist der Start Button der die erste Frage in Label1 schreibt. Label1 enthält die Fragen die durch Button 2 geändert werden. Label2 enthält dann, je nachdem was der Benutzer wählt : 'Wahr' oder 'Falsch'. Durch den Button 3 wird die gegebene Antwort getestet. So mein Quelltext sieht folgendermaßen aus :
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
Label1.caption := 'Was ist 2+2?';
RadioButton1.Caption:= '5';
RadioButton2.Caption:='4';
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:= 'Was ist 3+2?';
RadioButton1.Caption:= '5';
RadioButton2.Caption:= '7';
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Label2.Visible:=True;
if (RadioButton1.Checked) and not (RadioButton2.Checked) then
Label2.Caption:= 'SUPER';
else
Label2.caption :='Das ist leider falsch';
So nun ist aber das Problem, wenn ich jetzt Frage 2 (Also die von Button 2 neu eingefügte) ebenfalls beantworten will "merkt" sich Delphi, dass in RadioButton1 die Lösung war. Wenn ich jetzt aber für Frage 2 die richtige Antwort in RadioButton2 schreiben würde, würde Delphi bei Frage 2 beide RadioButtons als richtig erkennen, da es ja RadioButton1 von der 1. Frage als richtig erkennt und jetzt von der 2. Frage RadioButton2 als richtig erkennt. Dadurch würde der Nutzer, egal ob er bei der 2. Frage RadioButton1 oder RadioButton2 anklickt immer recht haben. Und das soll er ja nicht ;D
So nun meine Frage : Wie kann ich delphi "sagen", dass es alles von Frage 1 vergisst und die RadioButtons für Frage 2,3,4... betrachtet ohne die vorherigen Fragen zu beachten?
Wenns etwas kompliziert formuliert ist könnt ihr einfach fragen... Ich konnte es nicht anders ausdrücken.
MFG