AGB  ·  Datenschutz  ·  Impressum  







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

speichern und laden eines stringgrid

Ein Thema von herrentor · begonnen am 31. Mai 2004 · letzter Beitrag vom 31. Mai 2004
Antwort Antwort
herrentor

Registriert seit: 29. Mai 2004
Ort: Emden
158 Beiträge
 
#1

speichern und laden eines stringgrid

  Alt 31. Mai 2004, 05:41
ich hab ein problem mit dem speichern und laden eines stringgrids. hier zeigt er die fehler (ungenügende forward- oder external-deklaration:'TForm1.LoadTab') und
(ungenügende forward- oder external-deklaration:'TForm1.LoadTab') an.

Code:

type
 TForm1 = class(TForm)
  procedure LoadTab(Sender: TObject; const FileName: TFileName);
  procedure OeffnenClick(Sender: TObject);
  procedure SaveTab(Sender: TObject; const FileName: TFileName);
  procedure Speichern1Click(Sender: TObject);
fürs speichern:

Code:

procedure SaveTab(Tab: TStringGrid; const FileName: TFileName);
var
  f:   TextFile;
  i, k: Integer;
begin
  AssignFile(f, FileName);
  Rewrite(f);
  with Tab do
  begin
    // Write number of Columns/Rows
    Writeln(f, ColCount);
    Writeln(f, RowCount);
    // loop through cells
    for i := 0 to ColCount - 1 do
      for k := 0 to RowCount - 1 do
        Writeln(F, Cells[i, k]);
  end;
  CloseFile(F);
end;

procedure TForm1.Speichern1Click(Sender: TObject);
begin
 SaveTab(Tab, 'c:\grid.txt');
end;
und fürs laden:

Code:

procedure LoadTab(Tab: TStringGrid; const FileName: TFileName);
var
  f:         TextFile;
  iTmp, i, k: Integer;
  strTemp:   String;
begin
  AssignFile(f, FileName);

  with Tab do
  begin
    // Get number of columns
    Readln(f, iTmp);
    ColCount := iTmp;
    // Get number of rows
    Readln(f, iTmp);
    RowCount := iTmp;
    // loop through cells & fill in values
    for i := 0 to ColCount - 1 do
      for k := 0 to RowCount - 1 do
      begin
        Readln(f, strTemp);
        Cells[i, k] := strTemp;
      end;
  end;
  CloseFile(f);
end;

procedure TForm1.OeffnenClick(Sender: TObject);
begin
 LoadTab(Tab, 'c:\grid.txt');
end;
was ist da los?

danke im voraus.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: speichern und laden eines stringgrid

  Alt 31. Mai 2004, 05:49
Hi! Der Header einer Funktion muss so lauten:
Code:
KlassenName.FunktionsName
Im Deklarationsteil (also oben in der Datei), stehen sie ohne Klassenname. Deshalb musst du schreiben:
Delphi-Quellcode:
type
 TForm1 = class(TForm)
  procedure SaveTab(Sender: TObject; const FileName: TFileName);
//...
procedure TForm1.SaveTab(Tab: TStringGrid; const FileName: TFileName);
Dasselbe gilt natürlich für alle anderen Funktionen auch. Beachte allerdings, dass in diesem Fall auch die Parameterlisten unterschiedlich sind, diese müssen aber gleich sein.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#3

Re: speichern und laden eines stringgrid

  Alt 31. Mai 2004, 05:53
Hai herrentor,

wenn Du eine procedure als Methode deiner TForm deklarierst musst Du den Type-Namen davor setzen. *uff was für ein blöder satz*

Code:
type
 TForm1 = class(TForm)
  procedure LoadTab(Sender: TObject; const FileName: TFileName);
 end;

implementation

procedure [b]TForm1.[/b]LoadTab(Sender: TObject; const FileName: TFileName);
[Edit]Um diese Zeit tippe ich wohl zu langsam [/Edit]
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
herrentor

Registriert seit: 29. Mai 2004
Ort: Emden
158 Beiträge
 
#4

Re: speichern und laden eines stringgrid

  Alt 31. Mai 2004, 06:49
ok, speichert tut er jetzt, aber öffnen nicht. ich denke mal das liegt daran, dass ich diesen teil rausgenommen hab:

Code:

Reset(f);
weil er sonst sagt, operator oder semikolon fehlt.
  Mit Zitat antworten Zitat
herrentor

Registriert seit: 29. Mai 2004
Ort: Emden
158 Beiträge
 
#5

Re: speichern und laden eines stringgrid

  Alt 31. Mai 2004, 06:53
ok, ich hab den fehler gefunden. besten dank.
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#6

Re: speichern und laden eines stringgrid

  Alt 31. Mai 2004, 06:53
Zitat von herrentor:
ok, speichert tut er jetzt, aber öffnen nicht. ich denke mal das liegt daran, dass ich diesen teil rausgenommen hab:.....
Hai herrentor,

ich kann in deinem obigen Code nirgends ein Reset (f); finden.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Nicodius

Registriert seit: 25. Apr 2003
Ort: Graz
2.234 Beiträge
 
Delphi 2006 Architect
 
#7

Re: speichern und laden eines stringgrid

  Alt 31. Mai 2004, 06:55
dann wird ers wohl VOR dem posten hier drinnen gehabt haben

von wegen ICH bin müde
Nico Müller
  Mit Zitat antworten Zitat
Antwort Antwort


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 11:36 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