Scopo
Restituisce l'HashKey dell'i-esimo nodo selezionato in un albero.
Sintassi
String h = "" // HashKey del nodo selezionato
//
h := Albero.GetSelectedNode(indice)
//
h := Albero.GetSelectedNode(indice)
Argomenti
Indice | E' un numero intero compreso tra 0 ed il risultato della funzione GetSelectedNodeCount - 1. |
Valore di ritorno
Viene restituito l'HashKey dell'i-esimo nodo selezionato. Per sapere cosa è un HashKey puoi leggere il paragrafo "Identificazione dei nodi: la proprietà HashKey" dell'articolo Nodi dell'albero.
Esempio di codice
// *********************************************************
// Elenca tutti i figli selezionati della categoria corrente
// *********************************************************
public void AlberoCategorie.ElencaSelezionati()
{
string Mess = "" //
int i = 0 //
int NumSel = 0 //
//
// Per cominciare espando il nodo di cui voglio vedere i nodi selezionati
Categorie.ExpandNode(CAT +c ToString(Categorie.ID), ??, ??)
//
// Poi giro su tutti i nodi selezionati enumerando solo i figli della
// categoria corrente
i := ZERO
while i < Categorie.GetSelectedNodeCount()
{
string h = "" // Hash Key del nodo selezionato
string hParent = "" // Hash Key del padre del nodo selezionato
//
h := Categorie.GetSelectedNode(i)
hParent := Categorie.GetParentNode(h)
//
// Se è un figlio della categoria corrente... lo inserisco nel messaggio
if hParent = CAT +c ToString(Categorie.ID)
{
string NomeProd = "" //
//
select into variables
set NomeProd := NomeProdotto
from
Prodotti // Master Table
where
Id = ToInteger(Mid(h, C4, ??))
//
Mess := Mess +c Trattino +c NomeProd +c A Capo
NumSel := NumSel + ONE
}
//
i := i + ONE
}
//
// Inserisco l'inizio del messaggio
Mess := FormatMessage(MSG Categoria Possiede, Categorie.Nome,
Categorie.GetChildrenNodeCount(CAT +c ToString(Categorie.ID)), NumSel,
??, ??) +c A Capo +c Mess
//
// Mostro il messaggio all'utente
EsempiLB.MessageBox(Mess)
}
// Elenca tutti i figli selezionati della categoria corrente
// *********************************************************
public void AlberoCategorie.ElencaSelezionati()
{
string Mess = "" //
int i = 0 //
int NumSel = 0 //
//
// Per cominciare espando il nodo di cui voglio vedere i nodi selezionati
Categorie.ExpandNode(CAT +c ToString(Categorie.ID), ??, ??)
//
// Poi giro su tutti i nodi selezionati enumerando solo i figli della
// categoria corrente
i := ZERO
while i < Categorie.GetSelectedNodeCount()
{
string h = "" // Hash Key del nodo selezionato
string hParent = "" // Hash Key del padre del nodo selezionato
//
h := Categorie.GetSelectedNode(i)
hParent := Categorie.GetParentNode(h)
//
// Se è un figlio della categoria corrente... lo inserisco nel messaggio
if hParent = CAT +c ToString(Categorie.ID)
{
string NomeProd = "" //
//
select into variables
set NomeProd := NomeProdotto
from
Prodotti // Master Table
where
Id = ToInteger(Mid(h, C4, ??))
//
Mess := Mess +c Trattino +c NomeProd +c A Capo
NumSel := NumSel + ONE
}
//
i := i + ONE
}
//
// Inserisco l'inizio del messaggio
Mess := FormatMessage(MSG Categoria Possiede, Categorie.Nome,
Categorie.GetChildrenNodeCount(CAT +c ToString(Categorie.ID)), NumSel,
??, ??) +c A Capo +c Mess
//
// Mostro il messaggio all'utente
EsempiLB.MessageBox(Mess)
}
- Se la multi-selezione non è attiva la funzione restituisce il valore EmptyString.
Ultima modifica: 25/10/2016 / Validità: da 6.5.2680