Имя: Пароль:
1C
1С v8
УФ отключить вызов калькулятора у поля ввода числового значения.
,
0 kdenis
 
24.12.14
11:29
Доброго дня!
Платформа 8.3.5. Задача следующая.
В обработке заполняются некоторые поля с относительно постоянными значениями и одно числовое поле (А) со стабильно непостоянным значением. При нажатии Ctrl+Enter выполняется основное действие формы, далее в поле ввода (А) вводится новое значение и вновь Ctrl+Enter и т.д.
Логично было бы фокус ввода после Ctrl+Enter устанавливать на поле А. Реализовано это следующим образом:
ЭтаФорма.ТекущийЭлемент = Элементы.ПолеА;

При этом имеем фокус на нужном поле, но имеем и проблему: фокус на поле есть,а число туда ввести нельзя. Если набираешь цифры на клавиатуре, в поле ввода они не набираются. Если же перед этим нажать Enter, откроется стандартный калькулятор, в который цифры ввести можно. После этого снова нажать Enter и введенное значение отобразится в поле ввода.

Такая проблема актуальна, если поле ввода связано с числовым реквизитом объекта, точность которого отлична от 0. Если же реквизит объекта - число целое, то проблемы нет и значение можно ввести в поле сразу.

Неудачные попытки решения: отключил кнопку выбора у поля ввода, пробовал различные значения РежимВыбораНезаполненного и АвтоВыборНезаполненного.

Прошу откликнуться тех, у кого есть опыт решения подобных задач.
1 Fish
 
24.12.14
11:33
Всё нормально вводится на УФ.
2 kdenis
 
24.12.14
11:44
(1) После программной установки фокуса на поле формы, связанное с реквизитом объекта типа Число(10,3)?
3 Fish
 
24.12.14
11:51
(2) Да.
4 kdenis
 
24.12.14
11:56
(3) Платформа 8.3.5? У поля ввода есть какие-нибудь настройки или же все по умолчанию?
5 Fish
 
24.12.14
11:58
(4) 8.3.5.1231, всё в авто, только "Кнопка Выбора" - в "нет".
6 kdenis
 
24.12.14
12:11
(5) Что-то не могу заставить работать. Фокус ввода в каком событии устанавливаешь?
7 Fish
 
24.12.14
12:14
(6) При открытии. Только, имхо, тут дело не в этом.
8 kdenis
 
24.12.14
12:25
(7) Спасибо! Как раз в этом.
ПриОткрытии работает, а я устанавливаю фокус в обработчике команды, которая вызывается нажатием Ctrl+Enter. Возможно это и вносит свои коррективы.
9 olegves
 
24.12.14
12:39
(8) правильнее устанавливать в обработке оповещения, а оповещать по нажатии Ctrl+Enter
10 kdenis
 
25.12.14
11:23
(9) Попробовал сделать:
1. Через обработчик оповещения.
2. Через подключаемый обработчик ожидания.

Картина та же: фокус устанавливается, цифры не вводятся до нажатия Enter. Если поле ввода целого числа - все работает как надо, для дробного проблема со встроенным калькулятором.
11 kdenis
 
25.12.14
14:15
Подниму.