Autor Beitrag
Zlatan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175



BeitragVerfasst: Do 20.01.11 19:14 
Cih habe ein Quiz erstellt, das auf einer form 6 fragen produzieren kann.
4 buttons dienen als antworten
nun stimmt ein button bei zwei antworten.
wenn der richtige button geantwortet wurde soll sich form2 öffnen und wenn falsch dann
form3.

Mein Quelltext:

Button1click...
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
begin
if (Label1.Caption='...'or (Label1.Caption='###')
then
begin
Form2.Show;
Form1.close;
end else                                             / Formname ist hier egal
Form1.Close;
Form3.Show;     
end;



allerdings öffnet der mir dann sowohl die nächste frage als auch die andere Form. Die antwort ist also richtig und falsch zugleich

Moderiert von user profile iconMartok: Delphi-Tags gesetzt
Moderiert von user profile iconMartok: Topic aus Sonstiges (Delphi) verschoben am Do 20.01.2011 um 18:43


Zuletzt bearbeitet von Zlatan am Do 20.01.11 19:19, insgesamt 1-mal bearbeitet
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Do 20.01.11 19:19 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
begin
if (LAbel1.Caption='...'or (Label1.Caption='###')
then
begin
  Form2.Show;
  Form1.close;
end else / formname ist hier egal
begin <--- FEHLT  
  Form1.Close;
  Form3.Show;
end; <-- und das natürlich auch.

end;


Da fehlt ein "Begin".

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)


Zuletzt bearbeitet von Tilman am Do 20.01.11 19:27, insgesamt 1-mal bearbeitet
Zlatan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175



BeitragVerfasst: Do 20.01.11 19:23 
ist das nicht egal das geht auch ohne das funktioniert noch nicht mal mit diesem begin
das problem ist das der die antwort als falsch und richtig zugleich ansieht
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Do 20.01.11 19:26 
Dadurch dass das Begin (und ein weiteres end; am ende) fehlt, wird halt form3 jedesmal geöffnet. Wenn das so sein soll, dann ist es egal.

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)

Für diesen Beitrag haben gedankt: Zlatan
Zlatan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175



BeitragVerfasst: Do 20.01.11 19:27 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure TForm11.Button3Click(Sender: TObject);
begin
if   (Label2.Caption='Welcher dieser Vögel ist der beste Schwimmer und Taucher?'or (Label2.Caption= 'Welcher dieser Vögel frisst hauptsächlich Fisch?')
 then begin
Form11.Close;
Form12.Show;
end else

Form11.Close;
Form4.Show;
end;



hilft das weiter???
das ist das orginal so der öffnet Form4 und Form12 und schließt Form11
Er soll aber entweder Form4 oder Form12 öffnen
Zlatan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175



BeitragVerfasst: Do 20.01.11 19:31 
Sorry tatsächlich fehlten begin und end
DANKE
Tilman
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1405
Erhaltene Danke: 51

Win 7, Android
Turbo Delphi, Eclipse
BeitragVerfasst: Do 20.01.11 19:37 
Gerne :) Denk vor allem daran deinen Code immer schön einzurücken, dann sieht man nämlich am besten ob Blöcke (begin...end) korrekt sind. Ein weiterer "Trick" besteht darin, hinter jedes end; einen Kommentar // zu schreiben, z.B.
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
procedure MeineProzedur;
if bla then
  begin
  end// if bla
end// MeineProzedur


Dann kann man beim Programmieren am leichtesten erkennen, wo etwas falsch läuft, und die end's sauber unterscheiden :)

_________________
Bringe einen Menschen zum grübeln, dann kannst du heimlich seinen Reis essen.
(Koreanisches Sprichwort)