Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-04-2011
Ledian_Fdez Ledian_Fdez is offline
Miembro
 
Registrado: jun 2006
Ubicación: Ciudad Habana, Cuba
Posts: 242
Poder: 18
Ledian_Fdez Va por buen camino
Lightbulb Ayuda con este procedimiento

Hola chicos y chicas de este foro:

He creado este procedimiento para llenar los TreeView

Código Delphi [-]
Procedure LlenaTreeView(TreeView: TTreeView; Tabla: TADOQuery; Img1: Integer; Img2: Integer);
var
 Texto: String;
 TodosPtr, Nodo: TTreeNode;
begin
 TreeView.Items.Clear;
 TodosPtr:= TreeView.Items.Add(nil, 'Todas');
 TodosPtr.ImageIndex := Img1;
 TodosPtr.SelectedIndex := Img1;
 TodosPtr.StateIndex := Img1;
 Tabla.Open;
 Tabla.First;
 while not Tabla.Eof do
   begin
    Texto:= Tabla.Fields[0].AsString + '-' + Tabla.Fields[1].AsString;
    Nodo:= TreeView.Items.AddChild(TodosPtr, Texto);
    Nodo.ImageIndex := Img2;
    Nodo.SelectedIndex := Img2;
    Nodo.StateIndex := Img2;
    Tabla.Next;
   end;
 Tabla.Close;
end;

Pero resulta ser que después de usarlo varias veces en mi proyecto me doy cuenta que ahora necesito llenar otro TreeView, solo que la variable Texto no necesita ser el resultado de la concatenación del campo1 y campo2
Código Delphi [-]
Texto := Tabla.Fields[0].AsString

Habrá alguna forma de declarar o implementar dicho procedimiento donde no nesecite crearlo de nuevo.

Pense en ...
Código Delphi [-]
Procedure LlenaTreeView(TreeView: TTreeView; Tabla: TADOQuery; Img1: Integer; Img2: Integer, flat: Boolean);
var
 Texto: String;
 TodosPtr, Nodo: TTreeNode;
begin
 TreeView.Items.Clear;
 TodosPtr:= TreeView.Items.Add(nil, 'Todas');
 TodosPtr.ImageIndex := Img1;
 TodosPtr.SelectedIndex := Img1;
 TodosPtr.StateIndex := Img1;
 Tabla.Open;
 Tabla.First;
 while not Tabla.Eof do
   begin
    Texto:= Tabla.Fields[0].AsString;
    if flat then  // true --> para el caso de concatenar los campos
       Texto:=  Texto + '-' + Tabla.Fields[1].AsString;
    Nodo:= TreeView.Items.AddChild(TodosPtr, Texto);
    Nodo.ImageIndex := Img2;
    Nodo.SelectedIndex := Img2;
    Nodo.StateIndex := Img2;
    Tabla.Next;
   end;
 Tabla.Close;
end;

Pero no me convence mucho aunque lo hace bien, no se... quisiera oír recomendaciones y criterios al respecto.

Gracia de antemano
salu2
Yo.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ayuda con este Procedimiento Ledian_Fdez OOP 1 14-12-2010 19:54:12
ayuda con este procedimiento microbiano Conexión con bases de datos 7 06-04-2010 23:31:33
porque no sirve este pequeño procedimiento?? Gaim2205 Varios 5 28-09-2007 23:25:17
procedimiento almacenado ayuda con este codigo pipecato Varios 5 16-12-2005 12:24:34
Ayuda, como llamar a un procedimiento desde otro procedimiento? Ariatna Varios 1 01-02-2005 04:05:35


La franja horaria es GMT +2. Ahora son las 14:22:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi