![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
|
Procesar VirtaulStringTree
Sigo a vueltas con este elemento. Me parece estupendo, pero me está costando verdaderos sudores trabajar con él. Siguiendo con el mismo "bicho" de mi anterior hilo, tengo este árbol:
![]() Para procesar los nodos seleccionados uso este código para rellenar un TListView de otro formulario: Código:
TListItem *pItem;
PVirtualNode Nodo1, Nodo2;
Nodo1 = Mesas->GetFirst();
while (Nodo1 != NULL)
{
if (Mesas->CheckState[Nodo1] > csUncheckedPressed)
{
Nodo2 = Mesas->GetNext(Nodo1);
while (Nodo2 != NULL && Nodo2->Parent == Nodo1)
{
if (Mesas->CheckState[Nodo2] > csUncheckedPressed)
{
pItem = fEscrutinio->LisMesas->Items->Add();
pItem->Caption = ((PTreeEle)Mesas->GetNodeData(Nodo1))->Municipio;
pItem->SubItems->Add(((PTreeEle)Mesas->GetNodeData(Nodo2))->Municipio);
pItem->SubItems->Add(FormatFloat("#,###", ((PTreeEle)Mesas->GetNodeData(Nodo2))->Censo));
pItem->SubItems->Add(FormatFloat("#,###", ((PTreeEle)Mesas->GetNodeData(Nodo2))->Votos));
pItem->SubItems->Add(((PTreeEle)Mesas->GetNodeData(Nodo2))->CodMes);
}
Nodo2 = Mesas->GetNextSibling(Nodo2);
}
}
Nodo1 = Mesas->GetNextSibling(Nodo1);
}
|
|
#2
|
||||
|
||||
|
Aquí tienes ejemplos de virtualtreeview que pueden servirte, aunque es object pascal, no c++
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Cita:
|
|
#4
|
||||
|
||||
|
Estuve viendo el código del enlace. Muy interesante. Probándolo me he dado cuenta de una cosa: una vez que el nodo se ha expandido el bucle qe puse en mi mensaje funciona a la perfección aunque luego se contraigan todos los nodos; es como si hasta que no se expande totalmente no supiera lo que hay. Lo que no encuentro es como expandir todo el árbol; sé que lo hice pero no recuerdo como.
|
|
#5
|
||||
|
||||
|
¡NO HE DICHO NADA! Me estaba empeñando en poner ExpandFull cuando el procedimiento es justo al revés: FullExpand.
|
|
#6
|
||||
|
||||
|
vstArbol.FullExpand;
vstArbol.FullCollapse;
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#7
|
||||
|
||||
|
Gracias. Y ya he comprobado que si una vez cargado el árbol se ejecutan ambos al procesar los nodos lo hace bien.
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Forma de procesar Pagos | feliz-58 | Varios | 0 | 03-10-2017 05:14:12 |
| Procesar mensajes de un hilo | jars | OOP | 1 | 15-12-2012 20:24:26 |
| Procesar Archivos XML en Delphi 7 | nlsgarcia | Varios | 8 | 20-10-2012 20:56:08 |
| Procesar mensajes/Esperar | Anel Hernandez | Varios | 1 | 20-01-2012 07:31:34 |
| Procesar video | andressanchez | Gráficos | 3 | 14-01-2012 19:29:04 |
|