Работа с полем ввода на форме справочника
Всем привет!
Суть: делаю поле ввода имени каталога для последующего создания в файловой системе. Задумка такая, чтоб как только пользователь ввёл недопустимый символ, то возможно выдавалось бы предупреждение, и потом обработка не давала бы его ввести.
Результат: при вводе недопустимого символа он стирается из поля ввода, но при этом выделяется вся строка и надо переходить в конец строки, чтоб продолжить ввод.
Код:
Пробовал свойство поля 'ОбновлениеТекстаРедактирования' ставить в НЕТ, тогда выделения не происходит, но и недопустимый символ не убирается.
Вопросы:
1. Как программно убрать выделение в поле ввода на форме? Метод УстановитьГраницыВыделения не прокатывает.
2. Как программно поместить курсор в конец строки?
3. Возможно есть другие какие-то варианты решения задачи.
Суть: делаю поле ввода имени каталога для последующего создания в файловой системе. Задумка такая, чтоб как только пользователь ввёл недопустимый символ, то возможно выдавалось бы предупреждение, и потом обработка не давала бы его ввести.
Результат: при вводе недопустимого символа он стирается из поля ввода, но при этом выделяется вся строка и надо переходить в конец строки, чтоб продолжить ввод.
Код:
НедопустимыеСимволы = "\/:*?""<>|+";
ПоследнийСимвол = Прав(Элементы.НазваниеДляФайловойСистемы.ТекстРедактирования,1);
Индекс = СтрНайти(НедопустимыеСимволы, ПоследнийСимвол);
Если Индекс>0 Тогда
ОбъектУслуги.НазваниеДляФайловойСистемы = Лев(Элементы.НазваниеДляФайловойСистемы.ТекстРедактирования,СтрДлина(Элементы.НазваниеДляФайловойСистемы.ТекстРедактирования)-1);
КонецЕсли
Пробовал свойство поля 'ОбновлениеТекстаРедактирования' ставить в НЕТ, тогда выделения не происходит, но и недопустимый символ не убирается.
Вопросы:
1. Как программно убрать выделение в поле ввода на форме? Метод УстановитьГраницыВыделения не прокатывает.
2. Как программно поместить курсор в конец строки?
3. Возможно есть другие какие-то варианты решения задачи.
По теме из базы знаний
- Программное управление обычными формами документов и справочников в УПП/КА
- Управление состоянием для шаблона MVC и работы с данными объекта
- Глобальное меню разработчика для управляемых форм
- Программное приведение типа значения поля ввода и колонки табличного поля формы 1С8
- Табличная часть как поле ввода
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
вот так работает, но надо именно на сервере менять значение:
&НаКлиенте
Процедура НаименованиеИзменениеТекстаРедактирования(Элемент, Текст, СтандартнаяОбработка)
НаименованиеВВерхнийРегистр(Текст);
Элементы.Наименование.УстановитьГраницыВыделения(СтрДлина(Текст) + 1, СтрДлина(Текст) + 1);
Модифицированность = Истина;
КонецПроцедуры
&НаСервере
Процедура НаименованиеВВерхнийРегистр(Текст)
Объект.Наименование = ВРег(Текст);
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот