Site Meter
Inscreva-se:

quarta-feira, 3 de agosto de 2011

Delphi - Registros

    Quando a pessoa que está programando em Delphi e não têm conhecimento sobre registros, muitas vezes têm que declarar várias variáveis para um mesmo "Sujeito" que podem ser de vários tipos(Integer, Real, Boolean, String e etc). Um registro permite que exista uma variável do tipo Record com vários campos ou até mesmo criar um tipo de dado do tipo Record(se complicou aguarde que jajá eu descomplico).


Sintaxe Record como Variável:
<Nome_da_variável> : Record
<campo1> : <tipo de dado>
<campoN> : <tipo de dado>
End;

Sintaxe Record como Tipo:
Type
<Nome_do_registro> = Record
<campo1> : <tipo de dado>
<campoN> : <tipo de dado>
End;
Var
<nome_da_variável>: <nome_do_registro>


Abaixo segue um exemplo simples que servirá para
aplicar a teoria:

Componentes:
- 2 Labels
- 2 Edits
- 2 Buttons

Declare em Type:
humano = record
idade:integer;
nome:string;
end;

Declare nas variáveis Globais:
eu:humano;

Organize o form da seguinte maneira:


Renomeie os edits como edtnome e edtidade respectivamente e os botões como btngravar e btnmostrar respectivamente.

No OnClick do btngravar adicione
eu.nome:=edtnome.Text;
eu.idade:=strtoint(edtidade.Text);

No OnClick do btnmostrar adicione:
edtnome.Text:=eu.nome;
edtidade.Text:=inttostr(eu.idade);

Usando:
Compile e coloque os dados corretos nos campos nome e idade e em seguida clique em gravar, agora limpe os campos e clique em mostrar.

O Comando With: é usado para não ter que repetir sempre o nome da variável e do campo (<variável>.<Campo>)

Sintaxe:
WITH <Variável> do
 begin
 <campo1>:=<valor>;
 <campoN>:=<valor>; 
 end;

Exemplo: Altere o comando do btngravar para:
with eu do begin
nome:=edtnome.Text;
idade:=strtoint(edtidade.Text);
end;

Espero que leiam, entendam e compreendam. Qualquer dúvida é só comentar. Se alguém já conhece o comando e souber alguma forma de aprimorar meu códigos comente ai que eu posso até adicionar ao tópico!

2 comentários:

Jucifer disse...

olá guri
bah achei muito tri seu espaço
o template ta leve
pratico adorei

bjo grande guri

Victor Costa (vctrop) disse...

Obrigado pelo comentário e pela opinião! O Objetivo é ficar leve e prático mesmo.

Bjo grande pra você também!!!

Postar um comentário

PrograMakers