Chamar metodo de outra unit

Delphi

28/12/2004

Pessoal estou com dificuldade de utilizar uma procedure de uma unit em outra, alguem pode me ajudar. O meu codigo ta assim

unit Unit2;

interface
uses QStdCtrls;

implementation


type
   TTeste = class
   public
      procedure Mensagem(var Edit:TEdit);
   end;

procedure TTeste.Mensagem(var Edit:TEdit);
begin
   Edit.text:=´Mensagem de outra unit´;
end;
end.



Agora to tentando chamar ela pelo Form1 (Unit1), assim

procedure TForm1.Button1Click(Sender: TObject);
var
teste: TTeste;
begin
   teste:=tteste.Create;
   teste.Mensagem(Edit1.Text);
end;


Da erro
[Error] Unit1.pas(32): Undeclared identifier: ´TTeste´


Nao consigo utilizar, ja fiz de muitos jeitos, ja declarei a unit na uses, fiz de tudo, alguem pode me ajudar


Peterks

Peterks

Curtidas 0

Respostas

Vinicius2k

Vinicius2k

28/12/2004

Colega,

O seu type TTeste precisa estar na [b:e91d2ab0bc]interface[/b:e91d2ab0bc] da unit... types declarados na [b:e91d2ab0bc]implementation[/b:e91d2ab0bc] não são exportados para as demais units. E a Unit2 precisa estar na lista de uses da Unit1.

unit Unit2;

interface
uses QStdCtrls;

type
   TTeste = class
   public
      procedure Mensagem(var Edit:TEdit);
   end;

implementation

procedure TTeste.Mensagem(var Edit:TEdit);
begin
   Edit.text:=´Mensagem de outra unit´;
end;

end. 


Espero ter ajudado...
T+


GOSTEI 0
Peterks

Peterks

28/12/2004

Amigo valeu era isso mesmo :D
Muito Obrigado


GOSTEI 0
POSTAR