Fala ai Radizeiros e Radizeiras, tudo bem com vocês?
No post anterior falamos de herança de formulários, vimos como é simples ter vários forms seguindo padrão implementado do formulário padrão.
Agora nesse post estaremos vendo como criar novas propriedades em seu formulário, esse post é uma introdução ao nossos próximos posts.
Vamos adicionar propriedades a formulários já existentes.
Vamos ao nosso form padrão que criamos em nosso post anterior, nele iremos fazer um contador de cliques.
É algo bem simples, mas que você possa entender como trabalhar com as propertys no Delphi.
Como já falei diversas vezes, dentro do Delphi criamos um Form e ele já cria tudo orientado a objeto.
A partir desse momento já podemos criar propertys, atributos, métodos, tudo dentro dessa nossa nova classe.
Dentro da nossa classe do formulário padrão, iremos em public criar a nossa property
type TFormPadrao = class(TForm) ... private FClicks: Integer; procedure SetClicks(const Value: Integer); { Private declarations } public { Public declarations } property Clicks : Integer read FClicks write SetClicks; end; ...
Observe que em nosso código acima temos uma variável privada FClicks que está encapsulada, o método SetClicks para setar os cliques, no código iremos fazer uma pequena alteração.
type TFormPadrao = class(TForm) ... private FClicks: Integer; procedure SetClicks(const Value: Integer); function GetClicks: Integer; { Private declarations } public { Public declarations } property Clicks : Integer read GetClicks write SetClicks; end; ...
A unica alteração que foi feita foi a inclusão do método GetClicks na property, para que não ter acesso diretamente a propriedade.
Agora temos uma nova variável encapsulada com as propertys, quem trabalha de fora não tem acesso direto a minha variável, vai chamar os métodos Get e Set da minha property.
O que vou fazer agora?
Vou em nosso formulário padrão, e ele tem os eventos, e vamos no evento OnMouseDown, toda vez que for clicado com o mouse nós iremos setar na property SetClicks um valor onde todas as vezes que alguém clicar no mouse irá chamar essa ação.
... procedure TFormPadrao.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Single); begin SetClicks(1); end; ...
No nosso SetClicks, ele está atribuindo o valor que ele recebe a variável FClicks, então irei alterar ele para que ao receber o valor ele possa incrementar, onde ao passar no SetCliks o valor 1 ele irá acrescentar mais um na variável FClicks.
[codel language=”delphi”]
…
procedure TFormPadrao.SetClicks(const Value: Integer);
begin
FClicks := FClicks + Value;
end;
…
[/code]
Iremos colocar um label em nosso formulário padrão.
Todas as vezes que clicar no formulários iremos dentro do método SetClicks iremos colocar que esse label receba o incremento de nosso método.
procedure TFormPadrao.SetClicks(const Value: Integer); begin FClicks := FClicks + Value; Label2.Text := IntToStr(FClicks) + ' Cliques'; end;
Agora com nossa aplicação rodando, vamos nos formulários que herdam desse FormPadrao.
Viu uma das vantagem da orientação a objeto quando trabalhamos com herança?
Implementamos no FormPadrao e ele replicou para aqueles que herdam dele.
Todos os cliques que damos nos nossos formulários ele vai contando os cliques, simplesmente adicionamos uma property ao formulário, trabalhando com a herança do formulário padrão e isso já foi implementado para todos os forms de uma unica vez.
Essa é a vantagem de se trabalhar com POO, viu como fica fácil uma manutenção, como eu reutilizo o código facilmente, como eu consigo escalar qualquer tipo de alteração, consigo centralizar as alterações, para não fica dando Ctrl+C Ctrl+V, e depois esquecer de replicar alguma alteração para algum lugar, então trabalhar POO é só vantagem para você. Code promo 1xBet pour 2023, seulement, il vous donne un bonus de bienvenue de 200% jusqu’à 130€/$. Il s’agit d’un bonus de dépôt d’inscription, et vous pouvez l’utiliser pour les paris sportifs et les sports. Le programme de bonus du bookmaker 1xbet couvre presque toutes les activités de jeu des clients. De plus, les offres en termes de bonus peuvent concerner aussi bien les débutants que les joueurs expérimentés, offrant des préférences et des avantages supplémentaires à différentes étapes du jeu.
Esse post é mais um que faz parte da Certificação especialista em programação orientada a objetos.
A Certificação Especialista Orientada a Objetos dará a você a oportunidade de melhorar seu software, otimizar o seu tempo e te dar a possibilidade de atender melhor os seus clientes. Conhecer a fundo esse paradigma e utilizar todos os seus benefícios irá facilitar muito a sua vida quando houver necessidade por parte de um cliente de um update rápido ou resolver um problema.
CLIQUE AQUI PARA SABER MAIS SOBRE A CERTIFICAÇÃO ESPECIALISTA EM PROGRAMAÇÃO ORIENTADA A OBJETOS