Получает границы выделенной области текста.
Синтаксис
ПолучитьГраницыВыделения(<НачалоСтроки>, <НачалоКолонки>, <КонецСтроки>, <КонецКолонки>)Полное описание, параметры и ограничения
Расширение поля формы для поля текстового документа.ПолучитьГраницыВыделения (Form field extension for a text document.GetTextSelectionBounds)
Расширение поля формы для поля текстового документа (Form field extension for a text document)
ПолучитьГраницыВыделения (GetTextSelectionBounds)
Доступен, начиная с версии 8.2.
Синтаксис:
ПолучитьГраницыВыделения(<НачалоСтроки>, <НачалоКолонки>, <КонецСтроки>, <КонецКолонки>)
Параметры:
<НачалоСтроки> (обязательный)
Тип: Число.
Номер строки начала выделения.
<НачалоКолонки> (обязательный)
Тип: Число.
Номер колонки начала выделения.
<КонецСтроки> (обязательный)
Тип: Число.
Номер строки конца выделения.
<КонецКолонки> (обязательный)
Тип: Число.
Номер колонки конца выделения.
Возвращаемое значение:
Возвращает позицию курсора.
Описание:
Получает границы выделенной области текста.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент.
Примечание:
Метод можно использовать при открытом окне, в том числе в серверных вызовах.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Использовать ПолучитьГраницыВыделения своего поля текстового документа
Открытое поле с тремя собственными строками получает выделение по номерам строки / колонки. Затем четыре выходных параметра читаются обратно и выводятся, не оставаясь только в синтаксической строке.
Где и как запускать
Модуль своей управляемой формы: команды &НаКлиенте после открытия окна; подготовка &НаСервере при создании.
Подготовка
Создайте свою внешнюю обработку с управляемой формой. Добавьте реквизит УчебныйДокумент типа ТекстовыйДокумент и связанное поле УчебноеПоле вида ПолеТекстовогоДокумента; ПутьКДанным = УчебныйДокумент.
Создайте команду Выделить с кнопкой и назначьте ей ВыделитьПервуюСтроку. В модуле формы разместите основной клиентский блок и подготовительный серверный обработчик; назначьте событие ПриСозданииНаСервере.
Откройте форму в тонком клиенте и нажмите Выделить. Методы границ выделения используют поле уже открытого окна, не независимый ТекстовыйДокумент без формы.
&НаКлиенте
Процедура ВыделитьПервуюСтроку(Команда)
Поле = Элементы.УчебноеПоле;
Поле.УстановитьГраницыВыделения(1, 1, 1, 6);
НачалоСтроки = 0;
НачалоКолонки = 0;
КонецСтроки = 0;
КонецКолонки = 0;
Поле.ПолучитьГраницыВыделения(НачалоСтроки, НачалоКолонки, КонецСтроки, КонецКолонки);
Сообщить("Начало: " + Строка(НачалоСтроки) + ":" + Строка(НачалоКолонки));
Сообщить("Конец: " + Строка(КонецСтроки) + ":" + Строка(КонецКолонки));
КонецПроцедурыТа же форма: заполнение собственного текстового документа
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Документ = Новый ТекстовыйДокумент;
Документ.УстановитьТекст("Книга" + Символы.ПС + "Количество: 3" + Символы.ПС + "Сумма: 750");
ЭтаФорма.УчебныйДокумент = Документ;
КонецПроцедурыРазбор по шагам
Серверный подготовительный обработчик заполняет реквизит формы собственной строкой / строками.
Клиентская команда работает с конкретным УчебноеПоле уже открытой формы.
У текстового поля границы числовые; у форматированного — закладки. Эти варианты не взаимозаменяемы.
Как проверить результат
Выделение установлено в первой строке собственного текста; начало / конец выведены в сообщениях.
Мышью выделите другой участок и выполните только чтение границ: выходные параметры покажут текущую область. Файл и текст документа не изменяются.
Ожидаемый результат
Выделение реального собственного поля получено / восстановлено с правильными типами границ.
На что обратить внимание
Границы берутся у элемента формы, не у объекта документа данных.
Закладки нельзя переносить в другой документ или считать гарантированно действительными после изменения текста.
Не заменяйте ЗакладкаФорматированногоДокумента числовыми индексами. Код 1С при сборке справочника не выполнялся.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.