Como faço a chamada de métodos de uma class?
11/05/2021
0
Olá, pessoal estou precisando de ajuda fiz um programa funcional em delphi depois de pronto comecei a refatorar criei uma class e joguei tudo oque era método lá deixei o form só para fazer as chamadas até ai tudo certo só que ai preciso saber como chamo os métodos da class no form e como uso os objetos do form na class por exemplo na class eu atribuo um valor a um edit só que o edit está no form e não na clase!
Wanderson Cardoso
Curtir tópico
+ 0
Responder
Posts
08/07/2021
Jonatas Alves
Olá, pessoal estou precisando de ajuda fiz um programa funcional em delphi depois de pronto comecei a refatorar criei uma class e joguei tudo oque era método lá deixei o form só para fazer as chamadas até ai tudo certo só que ai preciso saber como chamo os métodos da class no form e como uso os objetos do form na class por exemplo na class eu atribuo um valor a um edit só que o edit está no form e não na clase!
Para usar a classe no "form", primeiramente, é declarar a criação do objeto da class:
// declaração da classe TAluno = class private FNome: String ; FIdade: Integer ; public property Nome: String read FNome write FNome ; property Idade: Integer read FIdade write FIdade ; end ; ... procedure TForm1.Button1Click(Sender: TObject); var LAluno: TAluno ; begin // instanciando objeto da classe LAluno := TAluno.Create ; end;
Obs: Caso a classe esteja declarada em uma unit diferente do form, é necessário declarar o nome da unit no uses da unit do form ;
Em relação à usar componentes do form dentro da classe, é necessário criar uma propriedade com o tipo do form invocador da classe, e então passar a referência do form:
// declaração da classe TAluno = class private FNome: String ; FIdade: Integer ; FForm: TForm1 ; public property Nome: String read FNome write FNome ; property Idade: Integer read FIdade write FIdade ; // propriedade que referencia o form invocador da classe property Form: TForm1 read FForm write FForm ; end ; ... procedure TForm1.Button1Click(Sender: TObject); var LAluno: TAluno ; begin LAluno := TAluno.Create ; LAluno.Form := Self ; // passar uma referência "Self" do form invocador end;
Obs: Dessa forma, na classe será possível manipular qualquer componente do form.
Boa sorte!
Responder
Clique aqui para fazer login e interagir na Comunidade :)