Nesse artigo vamos abordar um assunto simples, mas de grande importância na vida de qualquer desenvolvedor, que é a criação de componentes personalizados.
Trata-se de uma tarefa extremamente simples e que poderá te dar um bom ganho de tempo.
Neste simples exemplo vamos criar um componente TEDIT, mas com características próprias, como mudar a cor de fundo quando receber o foco e que aceite apenas números.
Iniciamente abra o Delphi e crie um novo projeto.
Vá em File/save all e salve como “EditPersonalizado” ou qualquer nome a sua escolha.
Adicione um TEDIT em seu formulário conforme a figura abaixo, pois é em cima dele que vamos trabalhar.
Renomeie como edtOnlyNumber ou um nome a sua escolha.
Próximo passo é dar as funcionalidades que queremos ao nosso EDIT.
Vamos fazer com que, no momento em que ele receber o foco, mude a cor de fundo e volte ao normal quando perder o foco. Para isso usaremos os seguintes comandos:
No evento OnEnter, insira o seguinte código:
edtOnlyNumber.Color := clInfoBk;
E no evento OnExit:
edtOnlyNumber.Color := clWhite;
Agora é fazer com que ele aceite apenas números. Esta é uma função muito fácil de se encontrar na internet.
Apenas copie e cole o código abaixo no evento KeyPress de seu Edit
if not (Key in[´0´..´9´,Chr(8)]) then Key:= #0;
Pronto, as funcionalidades de nosso componente estão prontas. Agora vamos gerar o componente.
Para isso, no menu, vá em Component/create component template.
Irá aparecer uma janelinha com os seguintes parâmetros:
Component name: Nome do seu componente;
Pallete page: Em qual aba de componentes o seu aparecerá (por padrão, o Delphi cria a aba templates, onde ficam armazenados os componentes criados, mas você pode escolher qualquer uma das abas de componentes);
Pallete icon: icone do seu componente (escolha ícones do tipo bitmap);
Passados os parâmetros, dê um ok e pronto!
Procure na tool pallete a aba templates e lá estará o seu componente, aí é so arrastar para o formulário e testar suas funcionalidades.
Este é um exemplo simples, mas as possibilidades são muitas. Você poderá, por exemplo, usar este recurso numa validação de cpf ou cnpj em suas aplicações.
Neste exemplo usei o Rad Studio 2007, mas pode ser feito em versões anteriores sem maiores problemas.
No próximo artigo veremos um pouco de Delphi para internet.
Espero ter ajudado e até a próxima!