Utilisation de contrôles d'arborescence
Une utilisation classique d'un contrôle d'arborescence (CTreeCtrl) suit le modèle ci-dessous :
Le contrôle est créé.Si le contrôle est spécifié dans un modèle de boîte de dialogue ou si vous utilisez CTreeView, la création est automatique lorsque la boîte de dialogue ou la vue est créée.Si vous souhaitez créer le contrôle d'arborescence en tant que fenêtre enfant d'une autre fenêtre, utilisez la fonction membre de Create .
Si vous souhaitez que votre contrôle d'arborescence pour utiliser des images, affectez une liste d'images en appelant SetImageList.Vous pouvez également modifier la mise en retrait en appelant SetIndent.Le moment opportun pour ce faire est dans OnInitDialog (pour les contrôles des boîtes de dialogue) ou OnInitialUpdate (pour les vues).
Placez des données dans le contrôle en appelant la fonction de InsertItem des CTreeCtrl une fois pour chaque élément de données.InsertItem retourne un handle vers l'élément que vous pouvez utiliser pour faire référence ultérieurement, par exemple en ajoutant des éléments enfants.Le moment opportun pour initialiser les données est en OnInitDialog (pour les contrôles des boîtes de dialogue) ou OnInitialUpdate (pour les vues).
Lorsque l'utilisateur interagit avec le contrôle, il envoie des messages de notification.Vous pouvez spécifier une fonction pour traiter les messages que vous souhaitez traiter en ajoutant une macro d' ON_NOTIFY_REFLECT dans votre table des messages de fenêtre du contrôle ou en ajoutant une macro d' ON_NOTIFY à la table des messages parente de la fenêtre.Consultez Messages de notification de contrôle d'arborescence plus loin dans cette rubrique pour obtenir la liste des notifications possibles.
Appelez les différentes fonctions membres définies pour définir des valeurs pour le contrôle.Les modifications que vous pouvez faire inclure définir la mise en retrait et modifier le texte, l'image, ou les données associées à un élément.
Utilisez les différents fonction d'obtention pour examiner le contenu du contrôle.Vous pouvez également parcourir le contenu du contrôle d'arborescence contenant des fonctions qui vous permettent de récupérer des handles aux parents, aux enfants, et des frères d'un élément spécifié.Vous pouvez également trier les enfants d'un nœud particulier.
Lorsque vous avez fini avec le contrôle, assurez -vous qu'il est correctement détruit.Si le contrôle d'arborescence est dans une boîte de dialogue ou s'il s'agit d'une vue, celui-ci et l'objet d' CTreeCtrl seront supprimés automatiquement.Sinon, vous devez vérifier que le contrôle et l'objet d' CTreeCtrl sont correctement détruits.