Partager via


CTreeCtrl::GetItemPartRect

Récupère le rectangle englobant d'une partie spécifique d'un élément spécifié dans le contrôle arborescence actuel.

BOOL GetItemPartRect(
     HTREEITEM hItem, 
     int nPart, 
     LPRECT lpRect
)const;

Paramètres

Paramètre

Description

[in] hItem

Handle vers un élément de contrôle arborescence.

[in] nPart

Identificateur de la partie. Doit avoir la valeur TVGIPR_BUTTON.

[out] lpRect

Pointeur vers une structure de RECT . Si cette méthode est réussie, la structure reçoit les coordonnées du rectangle de référence spécifiée par hItem et nPart.

Valeur de retour

true si cette méthode est réussie ; sinon, false.

Notes

Chaque élément de contrôle d'arborescence est englobé par un rectangle de graphiques. Chaque fois qu'un point dans ce rectangle utilisateur clique sur, l'élément est dit la correspondance. Cette méthode retourne le plus grand rectangle de sorte que lorsqu'un point dans le rectangle utilisateur clique sur, l'élément identifié par le paramètre d' hItem est atteint.

Cette méthode envoie le message d' TVM_GETITEMPARTRECT , qui est décrit dans Kit de développement logiciel Windows. Pour plus d'informations, consultez la macro de TreeView_GetItemPartRect .

Configuration requise

en-tête : afxcmn.h

Cette méthode est prise en Windows Vista et versions ultérieures.

Les spécifications supplémentaires pour cette méthode sont décrites dans Spécifications pour la génération des contrôles communs Windows Vista.

Exemple

l'exemple de code suivant définit une variable, m_treeCtrl, qui est utilisée pour accéder au contrôle arborescence actuel. l'exemple de code définit également un entier non signé et plusieurs variables de HTREEITEM. Ces variables sont utilisées dans l'exemple suivant.

public:
    // Variable to access tree control.
    CTreeCtrl m_treeCtrl;
    // Variable to access splitbutton control.
    CSplitButton m_splitbutton;
    // Accessibility identifier
    UINT accIdUS;
    // HTREEITEMs
    HTREEITEM hCountry;
    HTREEITEM hPA;
    HTREEITEM hWA;

L'exemple de code suivant utilise un identificateur d'accessibilité et la méthode de CTreeCtrl::MapAccIdToItem pour récupérer un handle vers l'élément d'arborescence racine. L'exemple utilise le handle et la méthode de CTreeCtrl::GetItemPartRect pour dessiner un rectangle 3D autour de cet élément. Dans la première section de l'exemple de code, qui n'est pas indiqué, nous avons créé une arborescence qui se compose d'un nœud de pays/région racine pour les états-unis, sous-nœuds pour les états de la Pennsylvanie et de Washington, et les éléments d'arborescence pour les villes dans les rapports. Nous avons utilisé la méthode de CTreeCtrl::MapItemToAccID pour associer l'élément d'arborescence racine avec un identificateur d'accessibilité.

    CRect rect;
    HTREEITEM hUS = m_treeCtrl.MapAccIdToItem( accIdUS );
    m_treeCtrl.GetItemPartRect( hUS, TVGIPR_BUTTON, &rect );
    m_treeCtrl.GetDC()->Draw3dRect( &rect, RGB(255, 0, 0), RGB(0, 0, 255));

Voir aussi

Référence

CTreeCtrl, classe

Graphique de la hiérarchie

TreeView_GetItemPartRect

RECT

CTreeCtrl::HitTest