TCustomRichView.GetSelectionBounds

<< Нажмите, чтобы показать Содержание >>

TCustomRichView.GetSelectionBounds

Возвращает границы выделенного фрагмента документа.

procedure GetSelectionBounds(out StartItemNo, StartItemOffs,

  EndItemNo, EndItemOffs: Integer; Normalize: Boolean);

Параметры:

StartItemNo – номер первого выделенного элемента (от 0).

StartItemOffs:

▪если первый выделенный элемент является текстовым, то начало выделения находится перед его символом с номером StartItemOffs (символы в строках считаются от 1, последняя позиция (после текстового элемента) равна длине текста + 1). Исключение составляют пустые текстовые элементы, отформатированные стилем с EmptyWidth>0; для них позиция после элемента равна 2.

▪если первый выделенный элемент не текстовый:

▪если StartItemOffs=0, выделение начинается перед этим элементом;

▪если StartItemOffs=1, выделение начинается после этого элемента.

EndItemNo – номер последнего выделенного элемента (от 0).

EndItemOffs:

▪если последний выделенный элемент является текстовым, то конец выделения находится перед его символом с номером EndItemOffs (символы в строках отсчитываются от 1, последняя позиция (после текстового элемента) равна длине текста + 1). Исключение составляют пустые текстовые элементы, отформатированные стилем с EmptyWidth>0; для них позиция после элемента равна 2.

▪если последний выделенный элемент не текстовый:

▪если EndItemOffs=0, выделение заканчивается перед этим элементом;

▪если EndItemOffs=1, выделение заканчивается после этого элемента.

Normalize:

▪если True, верхняя граница выделения возвращается в StartItemNo:StartItemOffs, нижняя в EndItemNo:EndItemOffs;

▪если False, границы возвращаются в том порядке, в котором выделение было сделано.

 

Выделение пустое, если

▪StartItemNo=-1 или

▪StartItemNo=EndItemNo и StartItemOffs=EndItemOffs.

 

Метод может быть вызван только если документ форматирован.

 

Если вы хотите получить границы выделения с помощью значений, аналогичных свойствам RichEdit (SelStart и SelLength), используйте вместо этого функцию RVGetSelection из модуля RVLinear.

 

См. также методы:

▪SetSelectionBounds.

См. также:

▪Работа с выделением.