Anda di halaman 1dari 13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

Buscar

favorito(2)

imprimir

anotar

marcarcomolido

tirardvidas

Quick Tips: Trabalhando com Objeto


no TreeView - Parte III
Nesta Quick iremos ver como trabalhar com Objetos no TreeView

(3) (0)

Ol galera, nesta Quick Tips irei mostrar a Parte III. Trabalhando com Objetos no TreeView. Veremos
as implementaes no Form, a parte da manipulao do Telefone e a recuperao dos dados no
http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

1/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

TreeView.
BtnAddTelefone : OnClick
Finalidade : Adicionar um telefone ao cliente selecionado
procedure TFrmPrincipal.BtnAddTelefoneClick(Sender: TObject);
Var
Node : TTreeNode;
Cliente : TCliente;
Telefone : TTelefone;
begin
if Assigned(TreeView1.Selected) then
begin
if TreeView1.Selected.Level = 0 then //Verica se estamos no primeiro Item
begin
http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

2/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

Node := TreeView1.Selected;
Cliente := TCliente(TreeView1.Selected.Data);
Telefone := TTelefone.Create;
With Telefone do
begin
DDD := EdtDDD.Text;
Numero := EdtNumero.Text;
Tipo := CbxTipo.Text;
end;
Cliente.Telefones.Add(Telefone);
TreeView1.Items.AddChildObject(Node,Telefone.Numero, Cliente);
ClearTelefone;
end
http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

3/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

else
ShowMessage('No trabalhamos com mais de um Nivel de Node');
end
else
ShowMessage('Erro !!! No existe um Node Pai Selecionado');
end;
BtnDelTelefone : OnClick
Finalidade : Excluir um telefone de um Cliente
procedure TFrmPrincipal.BtnDelTelefoneClick(Sender: TObject);
begin
if Assigned(TreeView1.Selected) then //Verica se existe referencia no item selecionado
begin
if TreeView1.Selected.Level = 1 then //Verica se estamos no segundo nvel para poder deletar
http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

4/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

begin
TCliente(TreeView1.Selected.Data).Telefones.Delete(TreeView1.Selected.Index);
TreeView1.Selected.Delete;
end;
end;
end;
TreeView : OnClick
Finalidade : Carregar para o Form as informaes armazenadas no TreeView, permitindo excluso
ou alterao.
procedure TFrmPrincipal.TreeView1Click(Sender: TObject);
begin
ClearCliente;
ClearTelefone;

http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

5/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

if TreeView1.Selected.Level = 0 then //Verica se estamos no primeiro nvel


begin
EdtCodigo.Text := IntToStr( TCliente(TreeView1.Selected.Data).Codigo );
EdtNome.Text := TCliente(TreeView1.Selected.Data).Nome;
EdtCPF.Text := TCliente(TreeView1.Selected.Data).CPF;
end
else
if TreeView1.Selected.Level = 1 then //Verica se estamos no segundo nvel
begin
EdtCodigo.Text := IntToStr( TCliente(TreeView1.Selected.Data).Codigo );
EdtNome.Text := TCliente(TreeView1.Selected.Data).Nome;
EdtCPF.Text := TCliente(TreeView1.Selected.Data).CPF;

http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

6/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

EdtDDD.Text :=
TCliente(TreeView1.Selected.Data).Telefones[TreeView1.Selected.Index].DDD;
EdtNumero.Text :=
TCliente(TreeView1.Selected.Data).Telefones[TreeView1.Selected.Index].Numero;
CbxTipo.ItemIndex :=
CbxTipo.Items.IndexOf(TCliente(TreeView1.Selected.Data).Telefones[TreeView1.Selected.Index].Tipo);
end;
end;

Testando o exemplo

http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

7/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

CDIGOS

ASSINEMVP

BaixeoAPP

Login

Fico por aqui e na prxima Quick Tips.


Um abrao
Wesley Y
wyamazack@rwsolution.com.br

http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

8/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

Leia todos artigos da srie


Quick Tips: Trabalhando com Objeto no TreeView - Parte I
Quick Tips: Trabalhando com Objeto no TreeView - Parte II
CDIGOS

PublicadonoCanalDelphi

ASSINEMVP

BaixeoAPP

Login

por Wesley y. Batista


CoordenadoreditorialDevMedia

Ajude-nos a evoluir: voc gostou do post?

(3)

(0)

Compartilhe:

Ficou com alguma dvida?


Post aqui sua dvida ou comentrio que nossa equipe responder o mais rpido possvel.

http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

9/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

AdilsonPereira

OlWesley,
Estdandoerronessas3linhas,poisnoestidentificandooscamposDDD,NumeroeTipo.
EstouusandoDelphiXE8.
EdtDDD.Text:=TCliente(TreeView1.Selected.Data).Telefones[TreeView1.Selected.Index].DDD
BaixeoAPP
Login
EdtNumero.Text:=TCliente(TreeView1.Selected.Data).Telefones[TreeView1.Selected.Index].Numero
CDIGOS
ASSINEMVP
CbxTipo.ItemIndex:=
CbxTipo.Items.IndexOf(TCliente(TreeView1.Selected.Data).Telefones[TreeView1.Selected.Index].Tipo)
desdej,agradeo.
Adilson.
h+1ano

AdilsonPereira

[dcc32Error]TreeViewObj.pas(155):E2018Record,objectorclasstyperequired
aiestoerro
Adilson
h+1ano

HlioCardoso

CONSULTOR

Adilson,esteerroocorreuporqueumapartedocdigodevetersidoconfundidacomTAGhtmleporisso
desapareceumasparaoerrosercorrigidonaclasseTCliente,ondeestiveroobjetoTList,troquepor
TList<TTelefone>,porqueissootal"generics"queowesleymencionou.
Sefizerissoemtodosircompilarnormalmente
h+1ano

Adicionar um comentrio...
http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

10/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

JooRicardo

BomdiaWesley,
SouinicianteeestoutentandoimplementarumapartedessecdigoparapegaroIddoregistro,pormest
apresentadoerronavarivelCliente:TCliente

CDIGOS

ASSINEMVP

E2003Undeclaredidentifier:'TCliente'

BaixeoAPP

Login

Poderiameajudar?
Desdejobrigado.
Att,
JooPaulo
h+1ano

DouglasClaudio

OlJoo,tudobem?
Vocchegoualeraprimeiraesegundapartedoartigo,antesdechegarnestaetapa?Oerroestacontecendo,
poisvocnodeu"Uses"naunitUCliente.Pararesoluodoproblema,naUnitquegerandoerro,pressioneas
teclasAlt+F11ouopoFile>UseUnitereferencieaUClientenaUnitatual.
Qualquerdvidaestoudisposio.
Umabrao!
h+1ano

JooRicardo

OlDouglas,tudoevc?
Nohaviameatentadoasoutraspartes.
http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

11/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

Vouverseconsigo.
Obrigado.
Abraos.
h+1ano

Adicionar um comentrio...

CDIGOS

ASSINEMVP

BaixeoAPP

Login

Mais posts
Artigo

Desenvolva aplicaes com MongoDB


Artigo

Tcnicas de debug no Delphi


Artigo

ListView: Listagem de dados dinmica em aplicaes mobile


Video aula

Criando um BD e Data Module - Curso Desenvolvendo para Android com Delphi - Aula 16
Video aula

GPS e Mapas - Curso Desenvolvendo para Android com Delphi - Aula 15


http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

12/13

10/3/2016

Quick Tips: Trabalhando com Objeto no TreeView - Parte III

Listar mais contedo

CDIGOS

ASSINEMVP

BaixeoAPP

DevMedia

Curtir Pgina

Login

124 mil curtidas

Publique | Assine | Faleconosco


Seja o primeiro de seus amigos a curtir isso.

HospedagemwebporPorta80WebHosting

http://www.devmedia.com.br/quick-tips-trabalhando-com-objeto-no-treeview-parte-iii/15434

13/13

Anda mungkin juga menyukai