Entwickler-Ecke
Dateizugriff - Rekordliste erstellen
sveno - Fr 05.03.04 00:38
Titel: Rekordliste erstellen
Hallo!
Wir haben vor ca. 1 Monat im Informatikunterricht mit Delphi angefangen!
Nun sollen wir das Spiel Mastermind prorammieren!Ich würde gerne wissen wie man eine Rekordliste einbauen kann die nicht bei jedem Neustart des Programms zurückgesetzt wird. Ich nehme an das dies nur mit einer Datei ausserhalb des Programms möglich ist auf die dann die Liste gespeichert wird und auch zugegriffen wird. Falsch ich das falsche Forum gewählt haben sollte sorry!
Neben bei würd ich gern wissen wie man es erreicht das bei bestimmten Aktionen (z.B. click auf button) eine mp3 erklingt.
Bin delphi anfänger und würde für laienhafte antworten dankkbar sein! :wink:
Danke im Vorraus, Sven!
catweasel - Fr 05.03.04 01:03
Im Prinzip richtiges Forum :-)
Du hast da richtig die Qual der Wahl... Je nachdem wie umfangreich deine Rekordliste sein soll...
Nur name und punkte, oder auch Datum, statistiken etc....
Entweder du speicherst es in ein Textfile (sequnziell über eine Stringlist zum Beispiel), oder du benutzt ein Record Typ und arbeitest mit typisierten Dateien, oder du erstellst auf Basis der TInifile eine Klasse die das kapselt....
Du könntest es aber auch als XML speichern.. Soo viele Möglichkeiten....
Catweasel
sveno - Fr 05.03.04 15:24
Also, die Rekordliste soll nur Namen, Punkte und Datum enthalten! Ich weiss aber weder was ein Record Typ ist, noch weiss ich was typisierte Dateien oder xml oder TInifile heisst :roll: Was würdet ihr mir denn davon empfehlen und wie bau ich das dann ins Programm ein?
sibbe - Mo 08.03.04 16:44
ich würd das ganze vielleicht über ne listbox machen...
speichern:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| const Rekord = 'C:\Rekord.txt';
procedure Tform1.Speichern(Name: string; Punkte: integer); var F: TextFile; begin AssignFile(F,Rekord); try Reset(F); except on EInOutError do Rewrite(f); end; Append(f); Writeln(f,inttostr(Punkte)+' '+Name+' '+Datetostr(date)); flush(f); closefile(f); end; |
die initialisierung dann beim oncreate:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| procedure TForm1.FormCreate(Sender: TObject); var F: Textfile; s: string; begin AssignFile(F,Rekord); try Reset(F); except on EInOutError do exit; end; while not eof(f) do begin readln(f,s); listbox1.Items.Add(s); end; closefile(f); listbox1.Sorted:=true; end; |
das einfache bei listbox ist die sortierung, allerdings wären dann die höchsten punkte an letzter stelle, wegen der alphabetischen sortierung
und deswegen n sortier-algorithmus zu schreiben halte ich für zu kompliziert, oder?
sibbe
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!