Wie ein Quiz verwirklichen?

ClinIC

Mitglied
Hi, ich möchte gerne ein kleine Quiz machen ,nur weiß ich nicht wie ich das mit den Fragen lösen soll. Immer eine neue Form anlegt,? Das wäre bestimmt auch doof. Habe es dann mal so probiert:
Code:
		private void Frage1()
		{
			lblFrage.Text = "Was ist ein LF 16/12?";
			rdbAntw1.Text = "Löschgruppenfahrzeug";
			rdbAntw2.Text = "Tanklöschfahrzeug";
			rdbAntw3.Text = "Löschfahrzeug";

			if(rdbAntw1.Checked)
			{
				MessageBox.Show("Korrekt");
				Frage2fua();              
			}

			else if(rdbAntw2.Checked || rdbAntw3.Checked)
			{
				MessageBox.Show("Inkorrekt");
			}
			else
			{
				MessageBox.Show("Keine Auswahl");
			}
		}

		private void Frage2fua()
		{
			lblFrage.Text = "Was ist der Türkensattel";
			rdbAntw1.Text = "Eindellung im Fuß";
			rdbAntw2.Text = "Eindellung im Keilbeinkörper";
			rdbAntw3.Text = "Türkischer Pferdesattel";

				if(rdbAntw2.Checked)
				{
					MessageBox.Show("Korrekt");
                
				}

				else if(rdbAntw1.Checked || rdbAntw3.Checked)
				{
					MessageBox.Show("Inkorrekt");
				}
				else
				{
					MessageBox.Show("Keine Auswahl");
				}
				
		}

		private void bttNext_Click(object sender, System.EventArgs e)
		{
			Frage1();
		}

Doch so ganz hinhauen tut das alles net.. Wie kann ich das noch lösen?

(Ich weiß das erst die Frage/Antwort wenn man uff button 1 drückt kommt, aber das ist ja halb so wild ;))

mfg & danke
Lars
 
Zuletzt bearbeitet:
wenn du genau sagen würdest was nicht funktioniert wärs leichter, aber soweit ich was erkenne sind es die zwei || für oder.
was ich weiß funktioniert das mit einem
 
also das ist so ganz verwirrend bei der 2. Frage kommt dann immer die MSG BOxen doppel (inkorrekt und korrekt) ..

Also die || stehen für den oder operator
 
Also ich würde das ganze über eine Datenbank oder einer XML-Datei lösen. Ansonsten musst Du ja für jede Frage eine eigene Methode schreiben, und daran kannst Du Dich dann schwarz tippen. ;)

Erstelle Dir am besten für so kleine Anwendungen eine MS-Access-Datenbank mit folgender Tabelle darin (vergessen wir mal die Normalisierung *g*):

tbl_fragen
id_fragen : zahl
frage: text(255)
richtige_antwort: text(255)
falsche_antwort_1: text(255)
falsche_antwort_2: text(255)

Anschließend trägst Du in das ID-Feld eine fortlaufende Nummer ein. In das Feld "frage" trägst Du logischerweise Deine Frage ein. Die in jeweiligen Antwort-Felder Deine Antworttexte.

Anschließend erstellst Du eine Verbindung über zur Access-Datenbank über Dein C#.NET-Programm und rufst per Zufallsprinzip eine Zeile aus der Tabelle ab und zeigst sie am Bildschirm an. Anschließend wertest Du die Benutzereingaben aus. Musst halt die Antworttexte am Bildschirm auch noch durchmischen.

Der Vorteil liegt auf der Hand. Du musst nicht mehr für jede Frage aufwendigen Quelltext schreiben, sondern Du hackst eine einzige Methode ein, die Dir die Texte aus der Datenbank liefert und fertig. :)
Später kannst Du auch weitere Sachen in die Datenbank schreiben wie zum Beispiel eine Highscore-Liste, aber immer der Reihe nach.

Das wär jetzt mal so ein semi-professioneller Ansatz für so ein Quiz, ist allerdings noch verbesserungsfähig. Aber ich will Dich ja nicht überlasten. :)

Hier im Forum findest Du auch alle Beiträge die Du dazu brauchst. Such mal im C#.NET-Forum über die Suchen-Funktion nach den Begriffen "access" und "zufallszahl".
 
Zuletzt bearbeitet:
Ich habe mal ein Quiz in C# gecodet, mit den Fragen in einer xml Datei.
Hab da auch ein kleines Programm für die Eingabe geschrieben.
Wenn du da Hilfe brauchst, kontaktier mich einfach über
Icq 129207389
Msn spbwertzui@hotmail.com
Irc auf irc.tutorials.de, Nck ist dYn|wertzui, komm einfach in #programming (in #tutorials bin ich schon lange wegen idlens oder so gebannt und wurde net entbannt)
 
Ups, habs auch gerade gemerkt ;)
Sorry, war mein Fehler, habe imemr versucht #tutorials un nicht #tutorials.de zu joinen.
Also findet man mich nun auch da :D
 
Zurück