Olá galera, nesta Quick Tips, parte II, iremos construir agora, nosso exemplo de Record, já vimos onde usar, e a função de um Record, agora vamos colocar em pratica. Obviamente outras pessoas tem outras coisas a dizer ou falar sobre Record, eu resumi o que tenho em mente na Quick anterior. Vamos ao que interessa.
Crie uma nova Aplicação em Delphi
Monte a seguinte tela
3 TLabeledEdit(EdtCodigo, EdtNome, EdtCPF)
4 TButton(BtnNovo, BtnLer, BtnGravar, BtnMudarCPF)
1 TStatusBar(SttsBrCliente)
1 TRadioGroup(RGSexo – 2 Itens)

Iremos criar agora uma Unit que terá a estrutura do nosso Record.
unit uCliente;
interface
Type
RCliente = Record
IDCliente : Integer;
Nome : String;
Sexo : String;
CPF : String;
Usuario : string;
constructor Create(xUsuario: String); //Constructor no Record
procedure MudarCPF(xCPF:String); //Procedure no Record
function UsuarioLogado: String; //Function no Record
End;
implementation
{ RCliente }
constructor RCliente.Create(xUsuario: String);
begin
Usuario := xUsuario;
end;
procedure RCliente.MudarCPF(xCPF: String);
begin
CPF := xCPF;
end;
function RCliente.UsuarioLogado: String;
begin
Result := Usuario;
end;
end.
No Create do Form
procedure TFrmPrincipal.FormCreate(Sender: TObject);
begin
BtnNovo.Enabled := True;
BtnGravar.Enabled := False;
BtnLer.Enabled := False;
KeyPreview := True;
end;
BtnLer - onClick
procedure TFrmPrincipal.BtnLerClick(Sender: TObject);
begin
With Cliente do
begin
EdtCodigo.Text := IntToStr(IDCliente);
EdtNome.Text := Nome;
EdtCPF.Text := CPF;
RGSexo.ItemIndex := RGSexo.Items.IndexOf(Sexo);
BtnNovo.Enabled := True;
BtnGravar.Enabled := True;
BtnLer.Enabled := False;
end;
end;
BtnNovo - onClick
procedure TFrmPrincipal.BtnNovoClick(Sender: TObject);
Var
Usuario : String;
begin
if InputQuery('Informe o Usuario', 'Digite o nome de Usuario',Usuario) then
begin
Cliente.Create(Usuario); //Usando o Create
SttsBrCliente.Panels[0].Text := 'Usuario Logado : ' + Cliente.Usuario;
BtnNovo.Enabled := False;
BtnGravar.Enabled := True;
BtnLer.Enabled := False;
end;
end;
BtnMudarCPF - onClick
procedure TFrmPrincipal.BtnMudarCPFClick(Sender: TObject);
begin
Cliente.MudarCPF(EdtCPF.Text); // Usando a Procedure
end;
FrmPrincipal - onKeyDown
procedure TFrmPrincipal.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_F2 then
ShowMessage(Cliente.Usuario);
end;
Fico por aqui ate a próxima Quick Tips.
Um abraço
Wesley Y
wyamazack@rwsolution.com.br