[lazarus] calling a procedure from another pas file
LeVA
leva at az.isten.hu
Sat Dec 27 09:11:24 EST 2003
Mattias Gaertner wrote:
> On Sat, 27 Dec 2003 13:43:44 +0100 LeVA <leva at az.isten.hu> wrote:
>
>
>>LeVA wrote:
>>
>>>Hi!
>>>
>>>First of all, Merry Christmas to everyone :)
>>>
>>>Now my question :)
>>>
>>>I have a procedure (let's say test_proced) in my main.pas file, and I
>>>can call it from there, and it works. I have another pas file, called
>>>test.pas. I want to call the test_proced procedure from that test.pas. I
>>>
>>>have added this under the test.pas's implementation section:
>>>
>>>uses main;
>>>
>>>Now I can use main.pas's variables, but still can not call that
>>>procedure.
>>>
>>>How can I do this?
>>>
>>>Thanks!
>>>
>>>Daniel
>>
>>Should I explain more precisely what is my problem, or this is not
>>possible with lazarus/fpc?
>
>
> Almost all units call procs in other units. Plz give more details.
>
>
> Mattias
I have a main.pas file.
main.pas:
----------------------------###----------------------------
procedure kocsi_olvas (hogy_mit: char; marka: string; tipus: string);
var sor :string[255];
i :byte;
const kocsi_file='kocsi.lst';
begin
blabla
case hogy_mit of
'm': begin blabla end;
't': begin blabla end;
'r': begin blabla end;
end;
end;
----------------------------###----------------------------
I have a test.pas file.
test.pas:
----------------------------###----------------------------
..
...
....
.....
var
Form6: TForm6;
implementation
uses
main;
{ TForm6 }
{ TForm6 }
{ TForm6 }
procedure TForm6.Form6Show(Sender: TObject);
var marka : string[255];
tipus : string[255];
sor : string[255];
i : integer;
begin
blabla
while markak[i]<>'' do
begin
blabla
kocsi_olvas('t',markak[i],'tipus');
blabla
end;
end;
----------------------------###----------------------------
And when I build the project, I get this in the messages window:
----------------------------###----------------------------
TOutputFilter: "test.pas(55,12) Error: Identifier not found "kocsi_olvas""
TOutputFilter: "test.pas(55,46) Error: Illegal expression"
TOutputFilter: "test.pas(113) Fatal: There were 2 errors compiling
module, stopping"
----------------------------###----------------------------
I thought that specifying the 'main' in the uses section is enough for
calling the procedure. I can read/write the main.pas's variables, but
can not call the main.pas's 'kocsi_olvas' procedure.
Thanks for the help!
Daniel
--
LeVA
More information about the Lazarus
mailing list