Partager via


CTreeCtrl::InsertItem

Appelez cette fonction pour insérer un nouvel élément dans un contrôle arborescence.

HTREEITEM InsertItem( 
   LPTVINSERTSTRUCT lpInsertStruct  
); 
HTREEITEM InsertItem( 
   UINT nMask, 
   LPCTSTR lpszItem, 
   int nImage, 
   int nSelectedImage, 
   UINT nState, 
   UINT nStateMask, 
   LPARAM lParam, 
   HTREEITEM hParent, 
   HTREEITEM hInsertAfter  
); 
HTREEITEM InsertItem( 
   LPCTSTR lpszItem, 
   HTREEITEM hParent = TVI_ROOT, 
   HTREEITEM hInsertAfter = TVI_LAST  
); 
HTREEITEM InsertItem( 
   LPCTSTR lpszItem, 
   int nImage, 
   int nSelectedImage, 
   HTREEITEM hParent = TVI_ROOT, 
   HTREEITEM hInsertAfter = TVI_LAST 
);

Paramètres

  • lpInsertStruct
    Un pointeur vers TVINSERTSTRUCT qui spécifie les attributs de l'élément d'arborescence à insérer.

  • nMask
    Spécifier entier qui l'attribut au jeu. Consultez la structure d' TVITEM dans Kit de développement logiciel Windows.

  • lpszItem
    Adresse d'une chaîne contenant le texte de l'élément.

  • nImage
    Index de l'image de l'élément dans la liste d'images du contrôle arborescence.

  • nSelectedImage
    Index de l'image sélectionnée de l'élément dans la liste d'images du contrôle arborescence.

  • nState
    Spécifie des valeurs pour les états de l'élément. Afficher les états d'élément de contrôle arborescence dans Kit de développement logiciel Windows pour une liste des états appropriés.

  • nStateMask
    Spécifie les états doivent être définis. Consultez la structure d' TVITEM dans Kit de développement logiciel Windows.

  • lParam
    Une valeur spécifique à l'application de 32 bits associé à l'élément.

  • hParent
    Handle du parent inséré de l'élément.

  • hInsertAfter
    Le handle de l'élément après lequel le nouvel élément doit être inséré.

Valeur de retour

Handle du nouvel élément si l'opération a réussi ; sinon NULL.

Notes

L'exemple montre les situations dans lesquelles vous pouvez utiliser chaque version de la fonction en insérant un élément de contrôle d'arborescence.

Exemple

// Insert a root item using the structure. We must 
// initialize a TVINSERTSTRUCT structure and pass its 
// address to the call. 

TVINSERTSTRUCT tvInsert;
tvInsert.hParent = NULL;
tvInsert.hInsertAfter = NULL;
tvInsert.item.mask = TVIF_TEXT;
tvInsert.item.pszText = _T("United States");

HTREEITEM hCountry = m_TreeCtrl.InsertItem(&tvInsert);

// Insert subitems of that root. Pennsylvania is 
// a state in the United States, so its item will be a child 
// of the United States item. We won't set any image or states, 
// so we supply only the TVIF_TEXT mask flag. This 
// override provides nearly complete control over the 
// insertion operation without the tedium of initializing 
// a structure. If you're going to add lots of items 
// to a tree, you might prefer the structure override 
// as it affords you a performance win by allowing you 
// to initialize some fields of the structure only once, 
// outside of your insertion loop.

HTREEITEM hPA = m_TreeCtrl.InsertItem(TVIF_TEXT,
   _T("Pennsylvania"), 0, 0, 0, 0, 0, hCountry, NULL);

// Insert the "Washington" item and assure that it is
// inserted after the "Pennsylvania" item. This override is 
// more appropriate for conveniently inserting items with  
// images.

HTREEITEM hWA = m_TreeCtrl.InsertItem(_T("Washington"),
   0, 0, hCountry, hPA);

// We'll add some cities under each of the states. 
// The override used here is most appropriate 
// for inserting text-only items.

m_TreeCtrl.InsertItem(_T("Pittsburgh"), hPA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Harrisburg"), hPA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Altoona"), hPA, TVI_SORT);

m_TreeCtrl.InsertItem(_T("Seattle"), hWA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Kalaloch"), hWA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Yakima"), hWA, TVI_SORT);

Configuration requise

Header: afxcmn.h

Voir aussi

Référence

CTreeCtrl, classe

Graphique de la hiérarchie

CTreeCtrl::DeleteItem

CTreeCtrl::HitTest

CTreeCtrl::SelectDropTarget

CTreeCtrl::GetItem

Tree View Control Reference