Как сделать чтобы в форме при изменении реквизита фокус сам перескакивал
☑
0
popcorn
30.09.11
✎
10:27
Как сделать чтобы в форме при изменении реквизита фокус сам перескакивал на другой реквизит, чтобы не нужно было жать ентер?
1
Stepa86
30.09.11
✎
10:29
а без нажатия на ентер как определить, что пора прыгать?
2
popcorn
30.09.11
✎
10:30
(1) ПриИзменении сработало
3
Stepa86
30.09.11
✎
10:33
(2) так оно при сходе с элемента срабатывает, а это или ентер или клик в другой элемент
4
PR
30.09.11
✎
10:34
(3) Видимо он по F4 выбирает :))
5
jsmith82
30.09.11
✎
10:35
Процедура РеквизитПриИзменении(Элемент)
УстановитьФокус(Элемент.Имя);
КонецПроцедуры
Процедура УстановитьФокус(Имя)
Индекс = СписокЭлементов(Имя).Индекс
ТекущийЭлемент = Элементы[СписокЭлементов[Индекс = 1]];
КонецПроцедуры
СписокЭлементов = Новый СписокЗначений()
СписокЭлементов.Добавить("Номер");
СписокЭлементов.Добавить("Дата");
СписокЭлементов.Добавить("Организация");
...
6
Stepa86
30.09.11
✎
10:43
(5) >> ТекущийЭлемент = Элементы[СписокЭлементов[Индекс = 1]];
наверно там должен быть +
Коллизий нет при таком перескоке? типа попадание одних данных в другие поля?
7
popcorn
30.09.11
✎
10:49
(5) Ограниченно рабочий вариант. Если редактируется поле типа Дата, то нормально перескакивает, а если редактируется с типом СправочникСсылка, то фокус ввода перескакивает во второе поле, но первое поле тоже выделено курсором и при нажатии ентер во втором поле перескакивает не в третье поле, а в то которое после первого, тоесть сново во второе.
Ошибка? Это не ошибка, это системная функция.