CTreeCtrl::GetItemPartRect
Возвращает ограничивающий прямоугольник для указанной части заданного элемента в текущем элементе управления иерархического представления.
BOOL GetItemPartRect(
HTREEITEM hItem,
int nPart,
LPRECT lpRect
)const;
Параметры
Параметр |
Описание |
---|---|
[входящий] hItem |
Дескриптор к элементу элемента управления иерархического представления. |
[входящий] nPart |
Идентификатор для части. Должен иметь значение TVGIPR_BUTTON. |
[исходящий] lpRect |
Указатель на структуру RECT. Если метод успешно, то структура возвращает координаты прямоугольника часть указанной hItem и nPart. |
Возвращаемое значение
true если этот метод выполнен успешно; в противном случае – значение false.
Заметки
Каждый элемент управления дерева, ограничен прямоугольником графики. При выборе пункта щелкните в прямоугольнике, говорят, что ударен элемент. Этот метод возвращает наибольший прямоугольник те, что при выборе пункта в прямоугольнике, ударен щелкните элемент, заданный параметром hItem.
Этот метод отправляет сообщение TVM_GETITEMPARTRECT, которое описано в Windows SDK. Дополнительные сведения см. в разделе TreeView_GetItemPartRect макрос.
Требования
заголовок: afxcmn.h
Этот метод поддерживается в Windows Vista и более поздних версиях.
Дополнительные требования для этого метода см. в Требования к сборке для использования стандартных элементов управления в Windows Vista.
Пример
В следующем примере кода определяется переменной m_treeCtrl, которая используется для доступа к текущему элементу управления иерархического представления. Пример кода также определяет целое число без знака и несколько переменных HTREEITEM. Эти переменные используются в следующем примере.
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;
В следующем примере кода используется идентификатор специальных возможностей и метод CTreeCtrl::MapAccIdToItem для получения дескриптора к элементу представления в виде дерева. Затем в примере используется маркер и метод CTreeCtrl::GetItemPartRect чтобы нарисовать прямоугольник вокруг трехмерного элемента. В предыдущем разделе " пример кода, который не отображается, было создано представление в виде дерева, которое состоит из корневого узла страны или региона, Соединенные Штаты, вложенные узлы для состояний Пенсильвания и Вашингтона и элементы дерева для городов в этих состояниях. Рекомендуется использовать метод CTreeCtrl::MapItemToAccID чтобы связать элемент представления в виде дерева корня со столбцами со специальными возможностями.
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));