AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Wer Wird Millionär? Abschlussprojekt Klasse 12
Thema durchsuchen
Ansicht
Themen-Optionen

Wer Wird Millionär? Abschlussprojekt Klasse 12

Offene Frage von "DeddyH"
Ein Thema von schulprogrammierer · begonnen am 28. Jan 2013 · letzter Beitrag vom 20. Feb 2013
 
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.662 Beiträge
 
Delphi 12 Athens
 
#15

AW: Wer Wird Millionär? Abschlussprojekt Klasse 12

  Alt 11. Feb 2013, 17:02
Weil er die Tutorials durchgearbeitet und hoffentlich ein wenig geübt hat? Mal ein Minibeispiel: angenommen, eine solche Inidatei für eine Schwierigkeitsstufe sähe so aus
Code:
[1]
Frage=Wieviel ist 2*2?
Richtig=4
Falsch1=42
Falsch2=Rembrandt
Falsch3=Hä?
[2]
Frage=Wer führte Regie beim Film "Die Vögel"?
Richtig=Alfred Hitchcock
Falsch1=Woody Allen
Falsch2=Stephen Spielberg
Falsch3=George Lucas
[3]
Frage=3 Dinge braucht der Mann: Feuer, Pfeife, ...
Richtig=Stanwell
Falsch1=Rauchmelder
Falsch2=Feuerlöscher
Falsch3=Dudelsack
Dann kann man daraus ganz einfach eine zufällig gewählte Frage samt Antworten herausholen (der Code ist ganz bewusst nicht optimal, etwas Arbeit soll ja noch bleiben):
Delphi-Quellcode:
procedure TForm1.ReadQuestion(const IniName: string);
var
  Ini: TMemIniFile;
  Sections: TStringlist;
  Question: string;
begin
  Memo1.Lines.Clear;
  Ini := TMemIniFile.Create(IniName);
  try
    Sections := TStringlist.Create;
    try
      Ini.ReadSections(Sections);
      Question := Sections[Random(Sections.Count)];
      Label1.Caption := Ini.ReadString(Question, 'Frage', 'Keine Frage vorhanden, nanu?');
      Memo1.Lines.Add(Ini.ReadString(Question, 'Richtig', ''));
      Memo1.Lines.Add(Ini.ReadString(Question, 'Falsch1', ''));
      Memo1.Lines.Add(Ini.ReadString(Question, 'Falsch2', ''));
      Memo1.Lines.Add(Ini.ReadString(Question, 'Falsch3', ''));
    finally
      Sections.Free;
    end;
  finally
    Ini.Free;
  end;
end;
Danach sollten die Frage in Label1 und alle Antworten in Memo1 stehen. Man muss sich natürlich noch merken, welche die richtige ist, sie zufällig durcheinandermischen etc., aber mir ging es jetzt nur um das Auslesen. Evtl. auftretende Fehler sollten natürlich auch noch behandelt werden.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
 

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz