myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

Delphi Speicherfunktion?

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 26.08.10, 15:14   #1
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard Delphi Speicherfunktion?

So guten tag ich habe eine frage bezüglich delphi:
Gibt es eine Möglichkeiten meine daten von einem programm von delphi abzuspeichern?
als bestes beispiel z.b. dass man eine fussball liga tabelle nimmt.
Wenn da dort werte für die mannschaften eingetragen sind und ich dann das programm schließe, dass dann beim nächsten start von dem programm die werte noch vorhanden sind? bzw dass ich sie wieder laden kann?

mfg MrChaosxtc

ps.: schonma danke an alle die sich die mühe machen mir zu antworten
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 26.08.10, 16:21   #2
gosha16
Banned
 
Registriert seit: Sep 2009
Ort: /root/
Beiträge: 824
Bedankt: 640
gosha16 ist noch neu hier! | 0 Respekt Punkte
Standard

Speicher das halt in eine Datei. Du kannst dir selber ein Format ausdenken oder z.B. Tini verwenden.
gosha16 ist offline   Mit Zitat antworten
Ungelesen 26.08.10, 16:31   #3
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

ja das problem ist ja, dass ich wenn ich ein programm geschrieben habe und dann das programm starte, dass ich dann wenn ich funktionen von dem programm nutze, die ergebnisse etc nicht speichern kann, sondern alles wieder in den ausgangspunkt vom programm gesetzt wird
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 26.08.10, 16:49   #4
Gun_der
Ist öfter hier
 
Benutzerbild von Gun_der
 
Registriert seit: Jan 2010
Beiträge: 281
Bedankt: 12
Gun_der ist noch neu hier! | 0 Respekt Punkte
Standard

Dann musst du das Laden der .ini Datei in das TFromCreate schreiben.
Gun_der ist offline   Mit Zitat antworten
Ungelesen 26.08.10, 20:44   #5
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

und woher bekomme ich eine solche .ini datei? muss ich die einfach selbst erstellen? und wenn ja... wie speichere ich dann den fortschritt in dieser?
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 26.08.10, 20:48   #6
Gun_der
Ist öfter hier
 
Benutzerbild von Gun_der
 
Registriert seit: Jan 2010
Beiträge: 281
Bedankt: 12
Gun_der ist noch neu hier! | 0 Respekt Punkte
Standard

Den code kann zum erstellen kann ich dir Morgen reinstellen.
Du musst dann z.B. bei einer tabelle soweit ich weiß jede einzelne Zelle Speichern. Es wird dann eine .ini Datei angelegt, die du auch mit dem Editor ausführen kannst. Da kannst dud ann mal schauen was du gespeichert hast.
Gun_der ist offline   Mit Zitat antworten
Ungelesen 26.08.10, 20:57   #7
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

mhh ich denke immer mehr, dass ich von delphi gar keine ahnung habe ^^
dachte immer mein wissen darüber wäre ganz aktzeptabel :P aber irgendwie lese ich bei deiner antwort jedes mal raus, dass es darauf hinausläuft, dass ich etwas lade...
dabei will ich ja erstma speichern^^
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 27.08.10, 07:58   #8
Gun_der
Ist öfter hier
 
Benutzerbild von Gun_der
 
Registriert seit: Jan 2010
Beiträge: 281
Bedankt: 12
Gun_der ist noch neu hier! | 0 Respekt Punkte
Standard

Zitat:
Zitat von Gun_der Beitrag anzeigen
Du musst dann z.B. bei einer tabelle soweit ich weiß jede einzelne Zelle Speichern.
Da hast du dein speichern.

so jetzt der Quellcode. Ganz wichtig: In die uses muss IniFiles.

Code:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IniFiles, Grids, StdCtrls, Buttons;          //Inifiles

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    BitBtn1: TBitBtn;
    Edit1: TEdit;
    Button1: TButton;
    procedure BitBtn1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Ini: TIniFile;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);           //Laden der IniDatei
begin
 try
  Ini:=TIniFile.Create('C:\Test.ini');                 //Pfad der IniDatei
  StringGrid1.Cells[1,1]:=Ini.Readstring('s1','z1','');//Zuweisung des Inhalts der ini
 finally
 Ini.free;                                             //try-schleife zur sicherhiet....am ende wieder frei setzten
end;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);    //Speicherbutton
begin
 try
    Ini:=TIniFile.Create('C:\Test.ini');           //Erstellen der inidatei
    Ini.WriteString('S1','z1',StringGrid1.Cells[1,1]);   //zuweisung:Welche Zelle soll gespeichert werden
    //s1 und z1 sind quasi Variablen die nur für die ini eine rolle spielen, kannst du dir dann direkt in der ini ansehen
  finally
   Ini.Free;             //frei setzten
  end;

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
StringGrid1.Cells[1,1]:=Edit1.Text;     //den hab ich nur geschrieben um in die tabelle was reinzuschreiben
end;                        //war nur ein hilsmitten, nicht wichtig für die sache an sich



end.
Wie gesagt: du müsstest meines wissen jede einzenle Zelle speichern.
Viel Spaß damit
Gun_der ist offline   Mit Zitat antworten
Ungelesen 27.08.10, 16:16   #9
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

jo viele dank für die mühe... das müsste dann ja klappen probier das dann jetzt direkt aus^^
ich nehme mal an das da laden ungefähr gleich abläuft
vielen vielen dank ich mach mich an die arbeit :P
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 27.08.10, 16:18   #10
Gun_der
Ist öfter hier
 
Benutzerbild von Gun_der
 
Registriert seit: Jan 2010
Beiträge: 281
Bedankt: 12
Gun_der ist noch neu hier! | 0 Respekt Punkte
Standard

Naja beim laden halt nicht "Writestring" sondern "Readstring"
Gun_der ist offline   Mit Zitat antworten
Ungelesen 27.08.10, 18:50   #11
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

so dann nochmal danke und ich nehme mal an, dass damit das topic geschlossen werden kann... falls das hier getan wird^^
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 27.08.10, 19:05   #12
Gun_der
Ist öfter hier
 
Benutzerbild von Gun_der
 
Registriert seit: Jan 2010
Beiträge: 281
Bedankt: 12
Gun_der ist noch neu hier! | 0 Respekt Punkte
Standard

Wenn denn dann funktioniert kann man das machen^^
Gun_der ist offline   Mit Zitat antworten
Ungelesen 28.08.10, 16:12   #13
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

so dann nochmal danke und ich nehme mal an, dass damit das topic geschlossen werden kann... falls das hier getan wird^^
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 28.08.10, 16:15   #14
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

oh das schliessen kann ich ja selber^^...
aber ich hab noch ein problem jetzt...
wie sag ich dem programm denn jetzt, dass z.b. die werte von buttons geändert wurden
z.b.:
button1.visible:= true wurde zu button1.visible:= false?
ich hab das programm zwar jetzt so weit, dass die tabelle gespeichert wird die ich erstellt habe, aber die buttons die durchs hinzufügen neuer spieler sichtbar wurden sind nach dem laden nicht mehr sichtbar
MrChaosxtc ist offline   Mit Zitat antworten
Ungelesen 28.08.10, 22:24   #15
Gun_der
Ist öfter hier
 
Benutzerbild von Gun_der
 
Registriert seit: Jan 2010
Beiträge: 281
Bedankt: 12
Gun_der ist noch neu hier! | 0 Respekt Punkte
Standard

Dass musst du dann nicht mit WriteString sonder mit WriteBool machen

zum speichern:
Code:
 Ini.WriteBool('s','x',false);
zum laden
Code:
Button1.visible:=Ini.readbool('s','x',true)  //Damit es beim ersten start sichtbar ist
Gun_der ist offline   Mit Zitat antworten
Ungelesen 29.08.10, 04:25   #16
MrChaosxtc
Anfänger
 
Registriert seit: Apr 2010
Beiträge: 20
Bedankt: 0
MrChaosxtc ist noch neu hier! | 0 Respekt Punkte
Standard

cool danke damit habe ich dann das programm endlich fertig...
ma schaun ob ich es letzt endlich auch nutzen werde:P
MrChaosxtc ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:50 Uhr.


Sitemap

().