Autor Beitrag
johi23
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Do 05.12.13 22:54 
Hallo.
Ich soll für die schule ein Wer wird Millionär spiel programmieren. Ich habe pro Geldstufe 3 verschiedene Fragen die per Zufall ausgewählt werden. Nun hat jede Frage die richtige Antwort auf einem anderen Button. Ich möchte das wen Frage 1 kommt und die Antwort auf Button3 liegt, wenn man auf den Button klickt man weiter kommt. Leider hat es mit sender = button3 nicht geklappt. Wisst ihr weiter??
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1448

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Do 05.12.13 23:03 
Hallo,
Du hast in relativ kurzer Zeit 3 Fragen gestellt, die alle noch offen sind und auf die Du Antworten erhalten hast.
Dreimal hast Du auf die Antworten nicht reagiert.
Natürlich kann hier jeder so viele Anfragen stellen wie er möchte, aber glaube mir, die Bereitschaft, Dir zu helfen, wird abnehmen, wenn Du Dich nie zu den Antworten äußerst.

user profile iconjohi23 hat folgendes geschrieben Zum zitierten Posting springen:
Ich soll für die schule ein Wer wird Millionär spiel programmieren. ... Leider hat es mit sender = button3 nicht geklappt. Wisst ihr weiter??

Eine neues Projekt für die Schule? So viele in so kurzer Zeit?
Nun ja. Natürlich kann Dir jemand helfen, aber ohne etwas mehr Information, z.B. einen Quelltext in dem man das Problem suchen kann, wird es nichts.
Also bitte ein Stück Quelltext.

Beste Grüße
Mathematiker

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
johi23 Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Do 05.12.13 23:05 
ausblenden volle Höhe 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:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
a:= random (3)+1;

  if a = 1 then begin
    label1.Caption:= 'Was ist man, wenn man mit' +#10+#13'dem Internet verbunden ist?';

    label1.Show;
    button1.Hide;
    button2.Show;
    button3.Show;
    button4.Show;
    button5.Show;

    button2.Caption:= 'inline';
    button3.Caption:= 'online';
    button4.Caption:= 'downline';
    button5.Caption:= 'leftline';


end;

  if a = 2 then begin
    label1.Caption:= 'Wenn irgendwo nichts los ist, und es langweilig ist,' +#10+#13'dann ist es einer Redensart nach....?';

    label1.Show;
    button1.Hide;
    button2.Show;
    button3.Show;
    button4.Show;
    button5.Show;

    button2.Caption:= 'leeres Hemd';
    button3.Caption:= 'tote Hoose';
    button4.Caption:= 'nasses Handtuch';
    button5.Caption:= 'alter Socken';

end;    

  if a = 3 then begin

    label1.Caption:= 'Was ruft man, wenn man' +#10+#13'seine Wut ausdrücken will?';

    label1.Show;
    button1.Hide;
    button2.Show;
    button3.Show;
    button4.Show;
    button5.Show;

    button2.Caption:= 'Fensterkitt';
    button3.Caption:= 'Scheibenkleister';
    button4.Caption:= 'Türkleber';
    button5.Caption:= 'Bodenleim';

end;


Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1448

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Do 05.12.13 23:10 
Hallo,
sag mal, was soll denn das? :?
Du hast eine Frage zu dem "Nichtfunktionieren" von Sender = button3, ich bitte Dich um den Quelltext und Du knallst hier irgendeinen Teil hin, der offensichtlich nichts mit Deinem Problem zu tun hat.

Für mich ist es damit erledigt. Suche Dir einen anderen, der Dir hilft. :evil:

Mathematiker

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
johi23 Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Do 05.12.13 23:14 
"sag mal, was soll denn das?
Du hast eine Frage zu dem "Nichtfunktionieren" von Sender = button3, ich bitte Dich um den Quelltext und Du knallst hier irgendeinen Teil hin, der offensichtlich nichts mit Deinem Problem zu tun hat."

Ich weiß nicht wo und wie ich sender= button3 einfüge damit es funktioniert.
Und der Quelltext hat sehrwohl was mit meinem Programm zu tun.
mandras
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 433
Erhaltene Danke: 107

Win 10
Delphi 6 Prof, Delphi 10.4 Prof
BeitragVerfasst: Do 05.12.13 23:27 
Der Quelltext mag etwas mit Deinem Programm zu tun haben,
aber nicht mit Deiner Frage.

Woher weißt Du, daß irgendwo "sender= button3" reinsoll? Aufgabenstellung?

Der gepostete Programmteil betrifft die Darstellung der Frage,
Du brauchst aber anscheinend etwas für die Auswertung der Antwort. Das ist ein anderer Programmteil.

Hinweis: Ein Button hat ein OnClick-Ereignis. Man kann auch mehreren Buttons das gleiche Ereignis zuweisen, dann muß dieses berücksichtigen, von welchem Button das Ereignis ausgelöst wurde. Dazu wird dem Click-Ereignis immer im Paramter "Sender" der Button hinterlegt, der gedrückt wurde.

Für diesen Beitrag haben gedankt: johi23
johi23 Threadstarter
Hält's aus hier
Beiträge: 15



BeitragVerfasst: Do 05.12.13 23:33 
Hallo.
Kannst du mir das mit dem sender bitte genauer erklären?
mandras
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 433
Erhaltene Danke: 107

Win 10
Delphi 6 Prof, Delphi 10.4 Prof
BeitragVerfasst: Fr 06.12.13 02:20 
user profile iconjohi23 hat folgendes geschrieben Zum zitierten Posting springen:
Hallo.
Kannst du mir das mit dem sender bitte genauer erklären?


Selber ausprobieren:

Im Formulardesigner einen Doppelklick auf einen Button machen. Du landest im Quelltexteditor.
Dort ist nun eine Methode die heißt irgendwie ...Buttonxclick (Sender...)

Diese Prozedur wird aufgerufen, wenn der Knopf gedrückt wird.
In der Variable Sender ist dann der Button enthalten, der gedrückt wurde.
Dort kannst Du dann prüfen:

... if Sender = Button1
oder
= Button2

etc
WasWeißDennIch
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 653
Erhaltene Danke: 160



BeitragVerfasst: Fr 06.12.13 09:25 
Vielleicht sollte man die Logik von der Darstellung trennen, dann muss man auch keinen Sender abfragen. Was braucht man denn? Eine Frage und 4 Antworten dazu, von denen eine richtig ist. Nun muss man nur noch wissen, welche Antwort der Nutzer ausgewählt hat, und kann das dann auswerten. Dazu könnte in den jeweiligen ButtonClicks z.B. stehen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TFormWWMMain.btn1Click(Sender: TObject);
begin
  Antwort := 1;
end;

procedure TFormWWMMain.btn2Click(Sender: TObject);
begin
  Antwort := 2;
end;

Die Variable/das Feld Antwort muss natürlich vorher deklariert worden sein.