AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

speichern von var

Ein Thema von Frodo_Beutlin · begonnen am 24. Mär 2006 · letzter Beitrag vom 28. Mär 2006
Antwort Antwort
Seite 3 von 4     123 4      
Benutzerbild von Hador
Hador

Registriert seit: 11. Dez 2004
Ort: Recke
682 Beiträge
 
Turbo Delphi für Win32
 
#21

Re: speichern von var

  Alt 26. Mär 2006, 18:51
Zitat von Frodo_Beutlin:
ini:=TIniFile.create(ExtractFilePath (ParamStr(0))+'D:\Office\Delphi\Umfragen\umfragepr.exeergebnis.ini');
ExtractFilePath (ParamStr(0)) liefert schon den Absoluten Pfad zu deinem Projekt, so dass du ihn nicht noch einmal angeben musst.
also:
ini:=TIniFile.create(ExtractFilePath (ParamStr(0))+'umfragepr.exeergebnis.ini'); Auch solltest du auf den Gebrauch von globalen Variablen verzichten

EDIT:
Ich glaub der rote Kasten hat Urlaub

Und bitte erst nach 24h pushen!
Lars Kiesow
http://www.larskiesow.de

Computer gehorchen deinen Befehlen, nicht deinen Absichten.
  Mit Zitat antworten Zitat
Frodo_Beutlin

Registriert seit: 24. Mär 2006
16 Beiträge
 
#22

Re: speichern von var

  Alt 26. Mär 2006, 19:25
erstmal sorry fürs pushen hab ich nicht gewusst..

soll ich jetzt bei beiden zeilen

ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'umfragepr.exeergebnis.ini'); oder

ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'ergebnis.ini'); schreiben?
  Mit Zitat antworten Zitat
bladecs

Registriert seit: 10. Sep 2005
23 Beiträge
 
Delphi 6 Personal
 
#23

Re: speichern von var

  Alt 26. Mär 2006, 19:36
also ich würde

ini:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'ergebnis.ini'); nehmen. Nimm den Namen, der für dich passender erscheint.
  Mit Zitat antworten Zitat
Frodo_Beutlin

Registriert seit: 24. Mär 2006
16 Beiträge
 
#24

Re: speichern von var

  Alt 26. Mär 2006, 19:52
ich habe beides schon versucht aber irgendwie bekomme ich nie die gespeicherten werte

kann mir jemand villeicht den quellcode so hinschrieben wie es funktioniren müsste?
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#25

Re: speichern von var

  Alt 26. Mär 2006, 20:38
Moin Frodo,

das einfachste, und übersichtlichste, wäre wohl, wenn Du ini als Feld in Deinem Formular deklarierst, und nur einmal (!) erzeugst.
Beispielsweise:

Delphi-Quellcode:
TForm1 = class(TForm)
//....

private
  Fini : TIniFile;
end;

/...

implementation

procedure TForm1.Form1Create(Sender: TObject); // OnCreate
begin
  // Instanz erzeugen
  // Hier muss die Ini-Datei im Programmverzeichnis liegen.
  Fini := TIniFile.Create(ExtractFilepath(paramstr(0)+'ergebnis.ini');
end;

procedure TForm1.Form1Destroy(Sender: TObject); // OnDestroy
begin
  // ...und wieder freigeben.
  FreeAndNil(Fini);
end;
Da man Datenbereiche von Objekten als Felder bezeichnet, bekommen diese, üblicherweise, den Präfix F, es funktioniert natürlich auch ohne.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Frodo_Beutlin

Registriert seit: 24. Mär 2006
16 Beiträge
 
#26

Re: speichern von var

  Alt 26. Mär 2006, 20:50
Delphi-Quellcode:
 unit umfrage;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, IniFiles;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    choosedrg: TRadioGroup;
    votebtm: TButton;
    procedure votebtmClick(Sender: TObject);
    procedure FormShow(sende:TObject);
  private
    Fini:TIniFile:
  public
    { Public-Deklarationen } 
  end;

var
  Form1: TForm1;
  a,b,c,d,e,f,ap,bp,cp,dp,ep,fp,x:double;

implementation

{$R *.dfm} 


procedure TForm1.Form1Create(sender:TObject);
begin
  Fini := TIniFile.Create(ExtractFilepath(paramstr(0)+'ergebnis.ini');
  a:=ini.ReadFloat('frage1','wert1',0);
  b:=ini.ReadFloat('frage1','wert2',0);
  c:=ini.ReadFloat('frage1','wert3',0);
  d:=ini.ReadFloat('frage1','wert4',0);
  e:=ini.ReadFloat('frage1','wert5',0);
  f:=ini.ReadFloat('frage1','wert6',0);
end;

procedure TForm1.votebtmClick(Sender: TObject);
begin
  case choosedrg.ItemIndex of
      0:a:=a+1;
      1:b:=b+1;
      2:c:=c+1;
      3:d:=d+1;
      4:e:=e+1;
      5:f:=f+1;
  end;
  x:=a+b+c+d+e+f;
  ap:=a*100/x;
  bp:=b*100/x;
  cp:=c*100/x;
  dp:=d*100/x;
  ep:=e*100/x;
  fp:=f*100/x;
  ini:=TIniFile.create(ExtractFilePath (ParamStr(0))+'ergebnis.ini');
  ini.WriteFloat('frage1', 'wert1', a);
  ini.WriteFloat('frage1', 'wert2', b);
  ini.WriteFloat('frage1', 'wert3', c);
  ini.WriteFloat('frage1', 'wert4', d);
  ini.WriteFloat('frage1', 'wert5', e);
  ini.WriteFloat('frage1', 'wert6', f);
end;

procedure TForm1.Form1Destroy(Sender: TObject);
begin
  FreeAndNil(Fini);
end;

end.
müsste dies dann so ausseheb?
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#27

Re: speichern von var

  Alt 26. Mär 2006, 21:07
Nein!
In der
procedure TForm1.votebtmClick(Sender: TObject); hast du "ini" und nicht "FIni" genommen!
Außerdem reicht es bei deiner Variante die Datei nur einmal zu Createn.

Also in der
procedure TForm1.votebtmClick(Sender: TObject); Das ini := TIniFile.Create(...); wegnehmen

Edit: Ich sehe gerade: INI gibt es gar nicht! Es gibt nur FIni! (siehe
procedure TForm1.Form1Create(sender:TObject); )

Lies dir doch bitte mal das Tutorial durch und kapiere es doch und wenn nicht, dann frage dazu etwas...
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Frodo_Beutlin

Registriert seit: 24. Mär 2006
16 Beiträge
 
#28

Re: speichern von var

  Alt 27. Mär 2006, 19:11
ich habs jetzt auf Fini geändert aber es funktioniert immer noch nicht. könnte mir jemand bitte den
gesamten quellcode umändern wie er dann aussehen müsste, bitte? das wäre wrklich hilfreich... danke im vorraus


tom
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#29

Re: speichern von var

  Alt 27. Mär 2006, 19:37
Was passiert denn? Compiliert er nicht wenn ja, was sagt er? Oder Startet er und lädt, bzw speichert nich.
Sorry meine Kristallkugel ist nämlich grad in reperatur
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Frodo_Beutlin

Registriert seit: 24. Mär 2006
16 Beiträge
 
#30

Re: speichern von var

  Alt 28. Mär 2006, 12:51
kompilieren funktioniert und auch das speichern läuft einwandfrei. nur wenn ich die variablen wieder aus der ini datei laden will bekomme ich immer 0 den variablen zugewiesen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


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 05:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz