GetItemAt(Pt: IPoint; [FullRow: Boolean = False]): ITreeListNode;
Pt. Точка, в которой нужно получить элемент компонента.
FullRow. Область, в которой производится проверка наличия элемента.
Метод GetItemAt осуществляет проверку наличия элемента в заданной точке клиентской области компонента.
Если точка Pt попадает в область элемента, то метод вернёт параметры этого элемента, иначе метод вернёт значение Null.
По умолчанию в параметре FullRow передается значение False, при этом областью элемента считается только та область, которую занимает пиктограмма и текст элемента (текст во всех столбцах, если свойству ShowColumnHeaders установлено значение True).
При установке параметру FullRow значения True областью элемента будет считаться вся строка, в которой он расположен: область отступа и экспандера, пиктограмма состояния, пиктограмма, текст элемента (текст во всех столбцах) и свободная область справа от текста.
Примечание. Метод GetItemAt не поддерживается компонентами TreeCombo, MetabaseTreeCombo, которые являются наследниками интерфейса ITreeControl.
Для выполнения примера предполагается наличие формы и, расположенного на ней, компонента TreeList с наименованием «TreeList1». Указанная процедура установлена в качестве обработчика события OnMouseMove компонента «TreeList1».
Sub TreeList1OnMouseMove(Sender: Object; Args: IMouseEventArgs);
Var
Node: ITreeListNode;
Begin
Node := TreeList1.GetItemAt(Args.pPoint, True);
If Node <> Null Then
Self.Text := Node.Text + '(' + Node.Selected.ToString + ')';
End If;
End Sub TreeList1OnMouseMove;
При выполнении примера будет отслеживаться положение курсора мыши в области компонента «TreeList1». Если курсор находится над строкой, в которой есть элемент, то текст элемента и признак наличия отметки у элемента будут выведены в заголовок формы.
См. также: