Thema: Quiz

Einzelnen Beitrag anzeigen

Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#19

Re: Quiz

  Alt 11. Sep 2009, 09:18
Obwohl die DP kein "Hausaufgabenforum" ist, in dem deine Aufgaben erledigt werden, geb ich dir hier mal etwas "Starthilfe":

Binde unter uses (ganz oben in der Unit) die Unit IniFiles ein. Dann deklarierst du dir eine Methode von deinem Hauptformular, etwa im public-Abschnitt:

procedure LoadQuestions; Die Procedure könnte z.B. so ausschauen:

Delphi-Quellcode:
procedure TFrom1.LoadQuestions;
var ini : TIniFile;
var anzahl : integer;
var i : integer;
var Frage : string;
var Antw1 : string;
var Antw2 : string;
var Antw3 : string;
var Antw4 : string;
var Richtig : integer;
begin
     //--
     ini := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'questions.ini');
     // ExtractFilePath(..) liefert Pfad der EXE-Datei
     //
     try
       anzahl := Ini.ReadInteger('ALLGEMEIN','AnzahlFragen',0);
       //
       if anzahl > 0 then
       begin
           for i := 1 to anzahl do
           begin
                Frage := Ini.ReadString('FRAGE'+IntToStr(i),'Frage','');
                Antw1 := Ini.ReadString('FRAGE'+IntToStr(i),'Antwort1','');
                Antw2 := Ini.ReadString('FRAGE'+IntToStr(i),'Antwort2','');
                Antw3 := Ini.ReadString('FRAGE'+IntToStr(i),'Antwort3','');
                Antw4 := Ini.ReadString('FRAGE'+IntToStr(i),'Antwort4','');
                Richtig := Ini.ReadInteger('FRAGE'+IntToStr(i),'Antwort4',0);
                // an diser Stelle musst du dir ueberlegen, was du mit den geladenen Daten anfaengst
           end;
       end;
     finally
       Ini.Free;
     end;
end;
(Den Quelltext hab ich nur schnell im Textditor geschrieben und nicht getestet, könnten also noch Tippfehler oder andere Fehler drin sein! Du musst ihn außerdem evtl. noch an den Aufbau deiner Ini-Datei anpassen.)

Die Procedure macht nichts anderes als das Lesen der Fragen und Antworten, die Fragen werden jedoch nirgends "weiterverwendet". Weiter oben habe ich bereits ein "Array of Record" genannt, in dem man alle Fragen speichern könnte. Da das hier aber eben kein Hausaufgabenforum ist, musst du dich um diesen Teil erstmel selber kümmern oder bei konkreten Fragen diese hier stellen.

Noch ein Hinweis: Du hast zwar jetzt einen Code, der das Laden der Fragen übernimmmt, aber ich gehe davon aus, dass du ihn nicht auf Anhieb verstehts. Daher mein Tipp: Kopiere ihn nicht einfach in dein Projekt, sondern gehe den Code komplett durch und versuche ihn wirklich zu verstehen, dabei solltest du einiges lernen, was du vielleicht später noch einmal gebrauchen kannst.
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat