Registriert seit: 29. Mai 2002
37.621 Beiträge
Delphi 2006 Professional
|
Re: Anfänger Problem - Psychologietest
4. Mai 2007, 10:52
Zitat von Smokers:
okay mal abgesehen von dem Beitrag von Luckie der für einen Anfänger
nicht gerade sehr konsruktiv ist schonmal danke an Tormentor32.
So, findest du? Dann guck dir mal das an:
Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
begin
case seite of
0:begin
label_text.Caption:='';
label_frage.caption:=frage[1,0,0];
Radiobutton1.show;
Radiobutton2.show;
Radiobutton3.show;
Radiobutton4.show;
Radiobutton5.show;
Seite:=seite+1;
end;
1..4:
begin
if (radiobutton1.Checked=false)AND(radiobutton1.Checked=false)AND(radiobutton2.Checked=false)AND(radiobutton3.Checked=false)AND(radiobutton4.Checked=false)AND(radiobutton5.Checked=false) then
begin
messagedlg('Du hast keine Auswahl getroffen',mterror,[mbok],1);
abort;
end
else
label_frage.caption:=frage[seite+1,0,0];
if radiobutton1.Checked=true then
begin
if frage[(seite+1),1,0]= 'd' then depressiv:=depressiv+2 ;
if frage[(seite+1),1,0]= 's' then schizoid:=schizoid+2 ;
if frage[(seite+1),1,0]= 'z' then zwanghaft:=zwanghaft+2 ;
if frage[(seite+1),1,0]= 'h' then hysterisch:=hysterisch+2 ;
if frage[(seite+1),1,0]= 'l' then luegen:=luegen+1 ;
if frage[(seite+1),1,0]= 'dummy' then dummy:=dummy+0 ;
end;
if radiobutton2.Checked=true then
begin
if frage[seite+1,1,0]= 'd' then depressiv:=depressiv+1 ;
if frage[seite+1,1,0]= 's' then schizoid:=schizoid+1 ;
if frage[seite+1,1,0]= 'z' then zwanghaft:=zwanghaft+1 ;
if frage[seite+1,1,0]= 'h' then hysterisch:=hysterisch+1 ;
if frage[seite+1,1,0]= 'l' then luegen:=luegen+1 ;
if frage[seite+1,1,0]= 'dummy' then dummy:=dummy+0 ;
end;
messagedlg('Depressiv:'+inttostr(depressiv)+', schizoid:'+inttostr(schizoid)+',zwanghaft:'+inttostr(zwanghaft)+',lügen:'+inttostr(luegen)+'.',mtinformation,[mbok],1);
Radiobutton1.Checked:=false;
Radiobutton2.Checked:=false;
Radiobutton3.Checked:=false;
Radiobutton4.Checked:=false;
Radiobutton5.Checked:=false;
seite:=seite+1;
end;
5:
begin
form2.Hide;
form3.show;
form3.label_depressiv.caption:=inttostr(depressiv);
form3.label_schizoid.caption:=inttostr(schizoid);
form3.label_zwanghaft.caption:=inttostr(zwanghaft);
form3.label_hysterisch.caption:=inttostr(hysterisch);
//form3.label_luegen.caption:=inttostr(luegen);
end;
end;
Und das:
Delphi-Quellcode:
procedure TForm2.Button2Click(Sender: TObject);
begin
case seite of
0:
begin
label_text.Caption := '';
label_frage.caption := frage[1, 0, 0];
Radiobutton1.show;
Radiobutton2.show;
Radiobutton3.show;
Radiobutton4.show;
Radiobutton5.show;
Seite := seite + 1;
end;
1..4:
begin
if (radiobutton1.Checked = false) and (radiobutton1.Checked = false) and (radiobutton2.Checked = false) and
(radiobutton3.Checked = false) and (radiobutton4.Checked = false) and (radiobutton5.Checked = false) then
begin
messagedlg('Du hast keine Auswahl getroffen', mterror, [mbok], 1);
abort;
end
else
label_frage.caption := frage[seite + 1, 0, 0];
if radiobutton1.Checked = true then
begin
if frage[(seite + 1), 1, 0] = 'd' then
depressiv := depressiv + 2;
if frage[(seite + 1), 1, 0] = 's' then
schizoid := schizoid + 2;
if frage[(seite + 1), 1, 0] = 'z' then
zwanghaft := zwanghaft + 2;
if frage[(seite + 1), 1, 0] = 'h' then
hysterisch := hysterisch + 2;
if frage[(seite + 1), 1, 0] = 'l' then
luegen := luegen + 1;
if frage[(seite + 1), 1, 0] = 'dummy' then
dummy := dummy + 0;
end;
if radiobutton2.Checked = true then
begin
if frage[seite + 1, 1, 0] = 'd' then
depressiv := depressiv + 1;
if frage[seite + 1, 1, 0] = 's' then
schizoid := schizoid + 1;
if frage[seite + 1, 1, 0] = 'z' then
zwanghaft := zwanghaft + 1;
if frage[seite + 1, 1, 0] = 'h' then
hysterisch := hysterisch + 1;
if frage[seite + 1, 1, 0] = 'l' then
luegen := luegen + 1;
if frage[seite + 1, 1, 0] = 'dummy' then
dummy := dummy + 0;
end;
messagedlg('Depressiv:' + inttostr(depressiv) + ', schizoid:' + inttostr(schizoid) + ',zwanghaft:' +
inttostr(zwanghaft) + ',lügen:' + inttostr(luegen) + '.', mtinformation, [mbok], 1);
Radiobutton1.Checked := false;
Radiobutton2.Checked := false;
Radiobutton3.Checked := false;
Radiobutton4.Checked := false;
Radiobutton5.Checked := false;
seite := seite + 1;
end;
5:
begin
form2.Hide;
form3.show;
form3.label_depressiv.caption := inttostr(depressiv);
form3.label_schizoid.caption := inttostr(schizoid);
form3.label_zwanghaft.caption := inttostr(zwanghaft);
form3.label_hysterisch.caption := inttostr(hysterisch);
//form3.label_luegen.caption:=inttostr(luegen);
end;
end;
end;
Formatierter Code hilft die Übersicht zu behalten und Fehler zu vermeiden bzw. schnell zu finden. Fehler wie: Falsch verschachteklte Schleifen und Bedingungen, fehlende begins und ends, Fehler in der Logik und im Programmablauf. Und hier im Forum, können auch noch andere ausser dir den Code lesen und verstehen und das willst du ja wohl.
Michael Ein Teil meines Codes würde euch verunsichern.
|