![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
|
Primer nodo de un TVirtualStringTree
Buenos días. Tengo un TVirtualStringTree como este:
![]() y a partir de la elección del usuario construyo un AnsiString para bautizar un informe; en el caso del ejemplo debe quedar así: Cita:
Código:
AnsiString cReportTitle = "";
PVirtualNode Nodo1 = Listado->FocusedNode;
while (Nodo1 != NULL)
{
try
{
cAux = Trim(((PTreeCor)Listado->GetNodeData(Nodo1))->Identidad);
}
catch(Exception &Exc)
{
break;
}
if (cAux.Pos("(") != 0)
cAux = cAux.SubString(1, cAux.Pos("(") - 1).Trim();
cReportTitle = UpperCase(cAux) + " - " + cReportTitle;
Nodo1 = Nodo1->Parent;
}
cReportTitle = "LISTADO POR " + cReportTitle.SubString(1, cReportTitle.LastDelimiter("-") - 1).Trim();
¿Cómo podría saber que he llegado al primer nodo de una rama en ese TVST? |
|
#2
|
||||
|
||||
|
Creo recordar que era algo así como:
Node := Vts1.GetFirst;
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Gracias. Lo probaré
|
|
#4
|
||||
|
||||
|
Bueno. Después de dar muchas vueltas encontré la solución: GetFirst, como me sugería Casimiro, no me vale porque ese método te dirige al primer nodo de todo el árbol. Me ha quedado así el código:
Código:
AnsiString cReportTitle = "";
PVirtualNode Nodo1 = Listado->FocusedNode;
while (Listado->GetNodeLevel(Nodo1) > 0)
{
cAux = Trim(((PTreeCor)Listado->GetNodeData(Nodo1))->Identidad);
if (cAux.Pos("(") != 0)
cAux = cAux.SubString(1, cAux.Pos("(") - 1).Trim();
cReportTitle = UpperCase(cAux) + " - " + cReportTitle;
Nodo1 = Nodo1->Parent;
}
cReportTitle = "LISTADO POR " +
UpperCase(Trim(((PTreeCor)Listado->GetNodeData(Nodo1))->Identidad)) + " - " +
cReportTitle.SubString(1, cReportTitle.LastDelimiter("-") - 1).Trim();
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Recorrer TVirtualStringTree | Angel.Matilla | C++ Builder | 6 | 25-11-2020 10:51:51 |
| Efectos en un TVirtualStringTree | Angel.Matilla | C++ Builder | 7 | 10-11-2020 12:16:29 |
| Personalizar TVirtualStringTree | Angel.Matilla | C++ Builder | 10 | 23-11-2019 10:10:49 |
| C++Builder 6 CFDI Mexico ¿Como agregar nodo dentro de otro nodo como hijo? | JXJ | C++ Builder | 0 | 10-03-2016 03:51:01 |
| Consulta - TP Arboles- "Para cada nodo de un arbol Indique nombre del nodo padre" | velapuerca88 | Varios | 5 | 08-06-2012 17:35:33 |
|