![]() |
Aufrufen einer Procedure unmöglich
Hallo Leute,
irgendwie funktioniert bei mir der Procedureaufruf nicht. Bei mir meldet der Compiler das: "Undefinierter Bezeichner 'schreibetextfile'". Danke im Vorraus für eure Hilfe.
Code:
Oh irgendwie kann ich die Stellen wo die Procedure aufgerufen wird nicht im Code Fett Makieren, oder farbig oder so, deshalb hab ich leerzeilen gelassen um es ein bissen offensichtlicher zu machen wo die Stellen vorkommen.
unit Unit4;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, ShellCtrls, StdCtrls, ExtCtrls; type TForm4 = class(TForm) ShellTreeView1: TShellTreeView; Button1: TButton; RadioGroup1: TRadioGroup; RadioButton2: TRadioButton; RadioButton3: TRadioButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); procedure FormActivate(Sender: TObject); procedure RadioButton2Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; const Pfadalt = 'E:\Delphi\Mathematik\Primzahlen Aufgelistet.txt'; var Form4: TForm4; sepfad:ttreenode; f : textfile; g :textfile; pfad : string; vorstr : string; implementation uses Mathematik, Unit5, Unit2, Unit3, Unit6; {$R *.dfm} procedure TForm4.Button1Click(Sender: TObject); begin sepfad := shelltreeview1.Selected; pfad:=shelltreeview1.Path+'\'+edit1.text+'.txt'; if fileexists(pfad) then begin form5.show; end else begin if radiobutton2.Checked then begin schreibetextfile ; end; if radiobutton3.Checked then begin copyfile(pansichar(pfadalt),pansichar(pfad),true); end; end; end; procedure schreibetextfile ; var i : integer; begin assignfile(f,pfad); assignfile(g,pfadalt); rewrite(f); reset(g); for i := 1 to aerg do begin if i=1 then begin read(g,vorstr); showmessage(vorstr); write(f,vorstr); end; end; end; procedure TForm4.FormActivate(Sender: TObject); begin shelltreeview1.Selected := sepfad; if radiobutton2.Checked then edit1.Text := 'Primzahlen Text'; if radiobutton3.Checked then edit1.Text := 'Primzahlen List'; end; procedure TForm4.RadioButton2Click(Sender: TObject); begin if (radiobutton2.Checked) and (edit1.Text = 'Primzahlen List') then edit1.Text := 'Primzahlen Text'; if (radiobutton3.Checked) and (edit1.Text = 'Primzahlen Text') then edit1.Text := 'Primzahlen List'; end; end. |
Re: Aufrufen einer Procedure unmöglich
an der stelle kennt der compiler die prozedur noch nicht - sie muß im quelltext vor der aufrufenden stehen
|
Re: Aufrufen einer Procedure unmöglich
Packe die Prozedur 'Schreibetextfile' einfach über die Methode.
Der Compiler geht von oben nach unten durch, und Du benutzt die Funktion bevor Du sie geschrieben hast, das heisst da kennt er sie noch nicht. Wenn Du erst die Funktion schreibst, und sie dann benutzt geht das. |
Re: Aufrufen einer Procedure unmöglich
Du musst die Prozedur schreibetextfile auch oben bekannt machen, da wo die anderen proceduren stehen, musst du auch den Kopf deiner Prozedur hinschreiben...
|
Re: Aufrufen einer Procedure unmöglich
Zitat:
|
Re: Aufrufen einer Procedure unmöglich
Oder den Prozedurkopf im interface-Teil bekanntmachen oder als Vorwärtsdeklaration im implementation-Teil:
Delphi-Quellcode:
procedure schreibetextfile; forward;
|
Re: Aufrufen einer Procedure unmöglich
Zitat:
|
Re: Aufrufen einer Procedure unmöglich
Bin ich blöd.
Danke für eure Hilfe klappt jetzt alles ganz prima. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:14 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-2025 by Thomas Breitkreuz