Einzelnen Beitrag anzeigen

Dejan Vu
(Gast)

n/a Beiträge
 
#3

AW: Selbstprogrammierung eines Vokabeltrainers

  Alt 28. Mai 2014, 07:17
Er liest eine Textdatei in eine Listbox ein. Wo ist da das Problem? Die Vorgabe war 'Textdatei oder typisierte Datei'.

Textdateien sind bei einfachen Sachen vorzuziehen, das man sie mit jedem Notepad-Derivat bearbeiten kann.

In deiner Textdatei muss neben dem Text, der das geschichtliche Ereignis beschreibt, auch die Jahreszahl stehen.
Damit das Programm die beiden Werte voneinander unterscheiden kann, sollte man sie markieren, z.B. mit einem Trennzeichen: "1939;Beginn des 2.Weltkrieges"

Damit kannst Du die Daten aber nicht einfach so ins Ereignispanel schreiben, sondern musst vorher Jahr von Ereignis trennen,

Delphi-Quellcode:
// Statt
// EreignisPanel.Caption:=ListBox1.Items.Strings[Zufall];
  TrenneJahrUndEreignis (ListBox1.Items.Strings[Zufall], FJahr, Ereignis);
  EreignisPanel.Caption := Ereignis;
...
'Ereignis' ist eine lokale String-Variable (die musst Du deklarieren, weißt Du, wo?)
'FJahr' ist ein privates Feld. Weißt Du auch, wo du das deklarieren musst?

Im OnClick des OK-Buttons vergleichst Du nun die Jahreszahleinfabe mit dem Feld 'FJahr' und gibst eine entsprechende Meldung aus.

Ach, trennen musst Du ja noch:
Delphi-Quellcode:
Procedure TForm1,TrenneJahrUndEreignis (text : String; Var jahr, ereignis : string);
Begin
  ...
  jahr := ...
  ereignis := ...
End;
Hier wird dir 'Pos' und 'Copy' weiterhelfen, und die Tatsache, das z.B. das Semikolon Jahr und Ereignis trennt.

Mehr Hilfe gibt es aber nicht
  Mit Zitat antworten Zitat