Adicionar Imagem em Objeto: TImage no Delphi

Veja nesta Quick como podemos adicionar uma imagem em um objeto criado.

Olá galera, nesta Quick Tips, irei mostrar como podemos armazenar uma imagem em nossos objetos, como a foto de um cliente, irei usar uma property do tipo TPicture, esta por sua vez é a propriedade do componente TImage, no qual conseguimos ilustrar e exibir imagens no Delphi

 

Vamos criar uma unit uCliente.pas, e salvar ela. Veja seu código completo.

 

unit uCliente;

interface

uses ExtCtrls, Graphics;

   Type

   TCliente = class

   private

   FCodigo: String;

   FSexo: String;

   FNome: String;

   FFoto: TPicture;

   procedure SetCodigo(const Value: String);

   procedure SetNome(const Value: String);

   procedure SetSexo(const Value: String);

   procedure SetFoto(const Value: TPicture);

   { private declarations }

   protected

   { protected declarations }

   public

   { public declarations }

   property Codigo: String read FCodigo write SetCodigo;

   property Nome: String read FNome write SetNome;

   property Sexo: String read FSexo write SetSexo;

   property Foto: TPicture read FFoto write SetFoto;

   published

{ published declarations }

end;

 

implementation

 

{ TCliente }

 

procedure TCliente.SetCodigo(const Value: String);

begin

   FCodigo := Value;

end;

 

procedure TCliente.SetFoto(const Value: TPicture);

begin

   FFoto := Value;

end;

 

procedure TCliente.SetNome(const Value: String);

begin

   FNome := Value;

end;

 

procedure TCliente.SetSexo(const Value: String);

begin

   FSexo := Value;

end;

 

end.

 

Agora vamos criar um form, e salvar o mesmo como uFrmPrincipal, vamos adicionar 1 StringGrid, e 2 BitBtn(BtnGravar, BtnCarregar), 2 TImage, suas implementações são bem simples, mas antes disso precisamos dar uses em uCliente.pas.

 

{ Registrando no StringGrid 1 objeto com a imagem carregada no primeiro TImage}

procedure TFrmPrincipal.BtnGravarClick(Sender: TObject);

Var

C : TCliente;

begin

C := TCliente.Create;

C.Codigo := '1';

C.Nome := 'Wesley Y';

C.Sexo := 'M';

C.Foto := Image1.Picture;

StringGrid1.Objects[1,1] := C;

StringGrid1.Cells[1,1] := C.Nome;

end;

{ Recuperando a imagem para um outro TImage, armazenada no Objeto }

 

procedure TFrmPrincipal.BtnRecuperarClick(Sender: TObject);

begin

Image2.Picture := TCliente(StringGrid1.Objects[1,1]).Foto;

end;

 

Vimos como é fácil armazenar imagens, assim como podemos armazenar strings ou integer, bem simples.

 

Fico por aqui até a próxima parte.

 

Um abraço

 

 

Wesley Y

wyamazack@rwsolution.com.br

 

Artigos relacionados