Thema: Delphi Save-Dialog

Einzelnen Beitrag anzeigen

Erwin Pälzig

Registriert seit: 4. Mär 2015
16 Beiträge
 
Delphi XE7 Professional
 
#8

AW: Save-Dialog

  Alt 12. Mär 2015, 16:19
Hallo alle zusammen.

Ich denke hier passt meine Frage ganz gut.
Es geht um die Eingabe von integer Werten für Variablen, welche anschließend in einem Textdokument abgespeichert werden.

Hier der Quellcode:
Delphi-Quellcode:
unit Unit17;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;

type
    TForm17 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Edit1Change(Sender: TObject);
    procedure Edit5Change(Sender: TObject);
    procedure Edit4Change(Sender: TObject);
    procedure Edit3Change(Sender: TObject);
    procedure Edit2Change(Sender: TObject);
    procedure Edit6Change(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form17: TForm17;
  ts,Te,ER,RE,th, Di: integer;

implementation

{$R *.dfm}

procedure TForm17.Edit1Change(Sender: TObject);
begin
  Edit1.Text:=IntToStr(ts); //bei Programmstart wird jede Eingabe zu Null, da alle initierten Werte auf 0 gesetzt werden
end;

procedure TForm17.Edit2Change(Sender: TObject);
begin
 Edit2.Text:=IntToStr(Te); //bei Programmstart wird jede Eingabe zu Null, da alle initierten Werte auf 0 gesetzt werden
end;

procedure TForm17.Edit3Change(Sender: TObject);
begin
  Edit3.Text:=IntToStr(ER); //bei Programmstart wird jede Eingabe zu Null, da alle initierten Werte auf 0 gesetzt werden
end;

procedure TForm17.Edit4Change(Sender: TObject);
begin
 Edit4.Text:=IntToStr(RE); //bei Programmstart wird jede Eingabe zu Null, da alle initierten Werte auf 0 gesetzt werden
end;

procedure TForm17.Edit5Change(Sender: TObject);
begin
 Edit5.Text:=IntToStr(th); //bei Programmstart wird jede Eingabe zu Null, da alle initierten Werte auf 0 gesetzt werden
end;

procedure TForm17.Edit6Change(Sender: TObject);
begin
 Edit6.Text:=IntToStr(Di); //bei Programmstart wird jede Eingabe zu Null, da alle initierten Werte auf 0 gesetzt werden
end;


{******** Export Data ********}
procedure TForm17.Button1Click(Sender: TObject);
var
 textis : textfile; // -> lokale Initialisierung der zu Speichernden Parameter in textfile (textis.txt existiert im Ornder in dem Programm ist)
 savepath : string; // -> lokale Initialisierung des Speicherpfades
 SaveDialog1 :TSaveDialog; // -> ist Save dialog variable
begin

 if SaveDialog1.execute then // -> Darstellung des Dateiöffnungs Dialogs (Quelle www.Delphibasics.co.uk)
 begin
  savepath := SaveDialog1.Files[0]; // (?)
  assignfile(textis,savepath); // Versuch der Öffnung von textist aus Dateipfad savepath
  rewrite(textis); // -> Einschreiben der Daten in Textdokument textis
  writeln(textis, 'Time(s) Web Temperature(C) Evap Rate(g/m2s) Residual Solvent(%) Coat Thickness(m) Diffusivity(m2/s) ');
  write(textis, ts); // Einschreiben des ts
  write(textis,' '); // Einschreiben des Freizeischen
  write(textis,Te); // Einschreiben der Te
  write(textis,' '); // Einschreiben des Freizeischen
  write(textis,ER); // Einschreiben der ER
  write(textis,' '); // Einschreiben des Freizeischen
  write(textis,RE); // Einschreiben des RE
  write(textis,' '); // Einschreiben des Freizeischen
  write(textis,th); // Einschreiben der th
  write(textis,' '); // Einschreiben des Freizeischen
  write(textis,Di); // Einschreiben des Di
  write(textis,#13#10); // (?)1* The "#13#10" part represents a carriage-return + line-feed combination. The "#13" is the ASCII equivalent to the CR (carriage return) value; #10 represents LF (line feed).
  end;
  closefile(textis); // -> Schließen des Textdokuments
end;
end.
Was ich verstehe, warum bei Eingabe von Werten in die Edit-Bereiche, die Werte auf 0 springen.
Die Frage ist, warum bei Betätigung des Buttons die folgende Fehlermeldung erscheint? (Siehe Anhang)

Vielen Dank für eure Unterstützung!
Miniaturansicht angehängter Grafiken
unit-17-ausgabe-bei-betaetigung-button.png  
  Mit Zitat antworten Zitat