Elementi padre e figlio controllo Tree
A qualsiasi elemento di un controllo albero (CTreeCtrl) può essere associato un elenco di elementi secondari, denominati elementi figlio. Un elemento con uno o più elementi figlio viene chiamato elemento padre. Un elemento figlio viene visualizzato sotto il relativo elemento padre ed è rientrato per indicare che è subordinato all'elemento padre. Un elemento che non ha un elemento padre si trova all'inizio della gerarchia e viene chiamato elemento radice.
In qualsiasi momento, lo stato dell'elenco di elementi figlio di un elemento padre può essere espanso o compresso. Quando lo stato viene espanso, gli elementi figlio vengono visualizzati sotto l'elemento padre. Quando viene compresso, gli elementi figlio non vengono visualizzati. L'elenco passa automaticamente tra gli stati espansi e compressi quando l'utente fa doppio clic sull'elemento padre o, se l'elemento padre ha lo stile TVS_HASBUTTONS , quando l'utente fa clic sul pulsante associato all'elemento padre. Un'applicazione può espandere o comprimere gli elementi figlio usando la funzione membro Expand .
Per aggiungere un elemento a un controllo albero, chiamare la funzione membro InsertItem . Questa funzione restituisce un handle del tipo HTR edizione Enterprise ITEM, che identifica in modo univoco l'elemento. Quando si aggiunge un elemento, è necessario specificare l'handle dell'elemento padre del nuovo elemento. Se si specifica NULL o il valore TVI_ROOT anziché un handle di elemento padre nella struttura TVIN edizione Standard RTSTRUCT o nel parametro hParent, l'elemento viene aggiunto come elemento radice.
Un controllo albero invia un messaggio di notifica TVN_ITEMEXPANDING quando l'elenco di elementi figlio di un elemento padre sta per essere espanso o compresso. La notifica consente di impedire la modifica o di impostare gli attributi dell'elemento padre che dipendono dallo stato dell'elenco di elementi figlio. Dopo aver modificato lo stato dell'elenco, il controllo albero invia un messaggio di notifica TVN_ITEMEXPANDED.
Quando un elenco di elementi figlio viene espanso, viene rientrato rispetto all'elemento padre. È possibile impostare la quantità di rientro usando la funzione membro SetIndent o recuperare l'importo corrente usando la funzione membro GetIndent .