Выбрать поле ввода и установить курсор в крайнее правое положение

1. HaIIpuKoJIe 12.04.18 08:47 Сейчас в теме
Добрый день! Помогите пожалуйста с решением такой задачки, необходимо выбрать поле ввода и поставить курсор в крайнее правое положение.
Выбрать поле ввода можно так:

ЭтаФорма.ТекущийЭлемент = ЭтаФорма.Элементы.КоличествоКопий;

Но так выделяется все поле ввода. А как поставить курсор справа?
1С:Предприятие 8.3 (8.3.11.3034)
По теме из базы знаний
Найденные решения
5. spacecraft 12.04.18 16:38 Сейчас в теме
(4) у нас не арабская вязь. У нас принято читать/писать слева направо. Крайнее правое положение это не 0,0.
ТекущийЭлемент = Элементы.КоличествоКопий;
ПозицияОкончания = СтрДлина(ТекущийЭлемент.ТекстРедактирования) +1;
ТекущийЭлемент.УстановитьГраницыВыделения(ПозицияОкончания, ПозицияОкончания);
alex_bitti; lostcay; +2 Ответить
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Alexey_ 26 12.04.18 08:52 Сейчас в теме
(1)УстановитьГраницыВыделения (SetTextSelectionBounds)


Вариант синтаксиса: По позициям начала и конца выделения в тексте


Синтаксис:
УстановитьГраницыВыделения(<НачальнаяПозиция>, <КонечнаяПозиция>)

Параметры:


<НачальнаяПозиция> (обязательный)
Тип: Число.
Позиция начала выделения в тексте.

<КонечнаяПозиция> (обязательный)
Тип: Число.
Конечная позиция выделения в тексте.
3. HaIIpuKoJIe 12.04.18 13:47 Сейчас в теме
Процедура Команда1(Команда) 
	ЭтаФорма.ТекущийЭлемент = ЭтаФорма.Элементы.КоличествоКопий; 
	ПозицияНачала = 0;
    ПозицияОкончания = 0;
	ЭтаФорма.ТекущийЭлемент.УстановитьГраницыВыделения(ПозицияОкончания);

КонецПроцедуры

Недостаточно фактических параметров. А как будет правильно?
4. HaIIpuKoJIe 12.04.18 16:23 Сейчас в теме
ЭтаФорма.ТекущийЭлемент.УстановитьГраницыВыделения(1,1)

Так работает но выделяет первое значение. (0,0) поставить нельзя
5. spacecraft 12.04.18 16:38 Сейчас в теме
(4) у нас не арабская вязь. У нас принято читать/писать слева направо. Крайнее правое положение это не 0,0.
ТекущийЭлемент = Элементы.КоличествоКопий;
ПозицияОкончания = СтрДлина(ТекущийЭлемент.ТекстРедактирования) +1;
ТекущийЭлемент.УстановитьГраницыВыделения(ПозицияОкончания, ПозицияОкончания);
alex_bitti; lostcay; +2 Ответить
6. HaIIpuKoJIe 13.04.18 08:51 Сейчас в теме
(5)
ТекущийЭлемент = Элементы.КоличествоКопий;
ПозицияОкончания = СтрДлина(ТекущийЭлемент.ТекстРедактирования) +1;
ТекущийЭлемент.УстановитьГраницыВыделения(ПозицияОкончания, ПозицияОкончания);

Так курсор становится не в крайнее правое положение а на первый знак справа.
7. spacecraft 13.04.18 08:56 Сейчас в теме
(6) проверить, что не забыли прибавить единицу:
СтрДлина(ТекущийЭлемент.ТекстРедактирования) +1
8. HaIIpuKoJIe 13.04.18 09:02 Сейчас в теме
(7)Извините. Не закомментировал кусок старого кода(неправильного). Спасибо за помощь, Ваш вариант работает.
9. Wezoowy 73 20.02.19 12:20 Сейчас в теме
Для многострочного поля ввода на УФ такой прием не сработал. В этом случае корректно отработало только через подключение обработчика ожидания:

&НаКлиенте
Процедура УстановитьТекущийЭлемент(Команда)
	
	ТекущийЭлемент = Элементы.Комментарий;
	
	ПодключитьОбработчикОжидания("УстановитьГраницыВыделенияКомментария", 0.1, Истина);
	
КонецПроцедуры

&НаКлиенте
Процедура УстановитьГраницыВыделенияКомментария()
	
	ПозицияОкончания = СтрДлина(Элементы.Комментарий.ТекстРедактирования)+1;
	Элементы.Комментарий.УстановитьГраницыВыделения(ПозицияОкончания, ПозицияОкончания);	
	
КонецПроцедуры
Показать
rinik88; Teplotrassamen; u_bar; Prometeus2011; +4 Ответить
10. u_bar 03.03.21 21:41 Сейчас в теме
(9)
Процедура УстановитьГраницыВыделенияКомментария()

ПозицияОкончания = СтрДлина(Элементы.Комментарий.ТекстРедактирования)+1;
Элементы.Комментарий.УстановитьГраницыВыделения(ПозицияОкончания, ПозицияОкончания);

КонецПроцедуры


Не понимаю почему, но работает
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)