Имя: Пароль:
1C
1С v8
Получение и запись строки в ПолеТекстового документа
,
0 FReIM
 
05.12.11
15:41
В общем то интерфейсная задача на 8.1, но мозг уже дымится.
Как в поле текстового документа сделать вставку произвольной строки в место мигания курсора.
Где это хоть прочитать можно. Пока поиск яндекса направлял только на строки ПоляТабличногоДокумента, а это совсем другая история.
Ну или хотя бы прочитать положение курсора в строке и номер этой строки. Пока хз как сделать.
Помогите пожалуйста кто сталкивался с подобной проблемой.
1 PVV65
 
05.12.11
15:49
(0) Этого сделать, как описано, нельзя. Всяческими извращениями - можно. Но лучше сформулируй цель. Если написать редактор ... - не уверен, что надо.
2 FReIM
 
05.12.11
16:01
Хмм. Т.е. считать положение курсора в строке и номер строки - нельзя никакими средствами? В ПолеТекстовогоДокумента?
Просто на коленке пишу редактор кода 1с, работающий в режиме 1с предприятие.
3 Fish
 
05.12.11
16:13
Есть такая обработка в некоторых типовых: "УниверсальныеПодборИОбработкаОбъектов" - там все это есть.
4 Defender aka LINN
 
05.12.11
16:15
ПолеТекстовогоДокумента (TextDocumentField)
ВыделенныйТекст (SelectedText)
Использование:

Чтение и запись.
Описание:

Тип: Строка. Содержит выделенный пользователем текст поля текстового документа на момент чтения свойства.
При записи в свойство нового текста этот текст заменяет текст, выделенный в настоящий момент. При этом выделение сбрасывается.

Доступность:

Толстый клиент.
Примечание:

Если в поле текстового документа не выделен текст, то записанный текст добавляется начиная с текущей позиции курсора. После добавления текущее положение курсора меняется (перемещается в конец вставленного текста).


Безумно трудно найти это в СП, да...
5 Fish
 
05.12.11
16:16
Может СП украли :)))
6 PVV65
 
05.12.11
16:18
(4) Да. Век живи - век учись.
7 FReIM
 
05.12.11
16:34
Хмм... На четвертые сутки зоркий сокол заметил, что четвертой стены нет. :)
Не там искал.
В общем позицию не считаешь. Но вставить на место курсора можно, а большего и не надо.
Спасибо! :)
8 Defender aka LINN
 
05.12.11
16:35
(7) "В общем позицию не считаешь" - у тебя, смотрю, вообще дела с СП не ладятся...
9 FReIM
 
05.12.11
16:43
ПолеТекстовогоДокумента (TextDocumentField)
ПолучитьГраницыВыделения (GetTextSelectionBounds)
Синтаксис:
ПолучитьГраницыВыделения(<Начало строки>, <Начало колонки>, <Конец строки>, <Конец колонки>)
Параметры:
<Начало строки> (обязательный)
Тип: Число. Номер строки начала выделения.
<Начало колонки> (обязательный)
Тип: Число. Номер колонки начала выделения.
<Конец строки> (обязательный)
Тип: Число. Номер строки конца выделения.
<Конец колонки> (обязательный)
Тип: Число. Номер колонки конца выделения.
Описание:
Получает границы выделенной области текста.
Возвращает позицию курсора.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
Разве что так.
10 FReIM
 
05.12.11
16:45
Я в смысле - нет отдельного свойства типа ТекущаяСтрока, ТекушийСимвол.
11 Smallrat
 
05.12.11
16:45
Элементы.ПолеТекстовогоДокумента.ПолучитьГраницыВыделения(НачалоСтроки, НачалоКолонки, КонецСтроки, КонецКолонки);
Элементы.ПолеТекстовогоДокумента.УстановитьГраницыВыделения(СтрокаУстановкиКурсора,КолонкаУстановкиКурсора,СтрокаУстановкиКурсора,КолонкаУстановкиКурсора);
12 Defender aka LINN
 
05.12.11
16:47
(9) Именно так.
13 FReIM
 
05.12.11
16:48
Угу. Оно самое.
14 FReIM
 
05.12.11
16:48
Всем спасибо.
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.