![]() |
Re: Textdatei in StringGrid anzeigen?
Tja, und wo ist die Prozedur Explode geblieben?
Delphi-Quellcode:
unit UnStringGrid;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus, StrUtils, Printers, ClipBrd, Grids; type TForm1 = class(TForm) Label1: TLabel; OpenDialog1: TOpenDialog; PrinterSetupDialog1: TPrinterSetupDialog; MainMenu1: TMainMenu; datei: TMenuItem; drucken: TMenuItem; ffnen1: TMenuItem; Druckereinstellungen1: TMenuItem; Drucken1: TMenuItem; PrintDialog1: TPrintDialog; AlleFelderlschen1: TMenuItem; StringGrid1: TStringGrid; Beenden1: TMenuItem; procedure ffnen1Click(Sender: TObject); procedure Druckereinstellungen1Click(Sender: TObject); procedure Drucken1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Beenden1Click(Sender: TObject); //Hier private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; procedure Explode(const s, delimiter: String; items: TStrings); implementation {$R *.dfm} procedure Explode(const s, delimiter: String; items: TStrings); begin items.CommaText := StringReplace(AnsiQuotedStr(s, '"'), delimiter, '","', [rfReplaceAll]); end; procedure FillGrid(sg: TStringGrid; lines: TStrings; delim: Char); var i: Integer; begin for i := 0 to Pred(lines.Count) do Explode(lines[i], delim, sg.Rows[sg.FixedRows + i]); end; procedure TForm1.ffnen1Click(Sender: TObject); var sl: TStringList; begin if OpenDialog1.Execute then begin sl := TStringList.Create; try sl.LoadFromFile(OpenDialog1.FileName); FillGrid(StringGrid1, sl, ';'); finally sl.Free; end; end; end; |
Re: Textdatei in StringGrid anzeigen?
Ich hatte sie da eingesetzt aber als es dann doch nicht funktioniert hat hab ichs wieder rausgemacht ;)
Als Fehler kommt stattdessen [Fehler] UnStringGrid.pas(40): Ungenügende Forward- oder External-Deklaration: 'Explode' |
Re: Textdatei in StringGrid anzeigen?
Sonst nimm halt den Prototypen wieder aus dem interface-Teil raus und stell sicher, dass die Prozedur als Erstes hinter implementation steht.
|
Re: Textdatei in StringGrid anzeigen?
Es wird immernoch [Fehler] UnStringGrid.pas(65): Undefinierter Bezeichner: 'Explode' angezeigt.
|
Re: Textdatei in StringGrid anzeigen?
Poste nochmal die Unit, da stimmt doch was nicht.
|
Re: Textdatei in StringGrid anzeigen?
Delphi-Quellcode:
Ich habe jetzt
unit UnStringGrid;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Menus, StrUtils, Printers, ClipBrd, Grids; type TForm1 = class(TForm) Label1: TLabel; OpenDialog1: TOpenDialog; PrinterSetupDialog1: TPrinterSetupDialog; MainMenu1: TMainMenu; datei: TMenuItem; drucken: TMenuItem; ffnen1: TMenuItem; Druckereinstellungen1: TMenuItem; Drucken1: TMenuItem; PrintDialog1: TPrintDialog; AlleFelderlschen1: TMenuItem; StringGrid1: TStringGrid; Beenden1: TMenuItem; procedure ffnen1Click(Sender: TObject); procedure Druckereinstellungen1Click(Sender: TObject); procedure Drucken1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Beenden1Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation procedure FillGrid(sg: TStringGrid; lines: TStrings; delim: Char); var i: Integer; begin for i := 0 to Pred(lines.Count) do Explode(lines[i], delim, sg.Rows[sg.FixedRows + i]); end; {$R *.dfm} procedure TForm1.ffnen1Click(Sender: TObject); var sl: TStringList; begin if OpenDialog1.Execute then begin sl := TStringList.Create; try sl.LoadFromFile(OpenDialog1.FileName); FillGrid(StringGrid1, sl, ';'); finally sl.Free; end; end; end;
Delphi-Quellcode:
wieder ganz raus gelassen da er mir sonst beide Fehlermeldungen anzeigt... :/
procedure Explode(const s, delimiter: String; items: TStrings);
|
Re: Textdatei in StringGrid anzeigen?
Du rufst in FillGrid Explode auf, hast aber den Quelltext von Explode immer noch nicht in Deine Unit kopiert.
|
Re: Textdatei in StringGrid anzeigen?
Ups ich hatte das nicht gesehn sorry für den Umstand :/
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz