Имя: Пароль:
1C
1С v8
8.2 УФ. Обработчик ожидания не дает ввести значение в текстовое поле
0 Vladimirr
 
07.12.11
00:12
Как побороть? Обработчик стоит с интервалом в 1 секунду. Соответственно, когда пользователь начинает что-то вводить в поле - через секунду это поле обнуляется. Есть ли какие события формы или другие способы обхода?
Спасибо.
1 mikecool
 
07.12.11
00:15
проверяй перед вызовом на заполненность поля и сбрасывай таймер
или на разницу введенных символов между вызовами
2 Vladimirr
 
07.12.11
00:21
(1) "перед вызовом" - это как? Пока текст не введен до конца - форма не видит разницы (т.е. там всегда старое значение)
3 Vladimirr
 
07.12.11
00:27
Вопрос закрыт. В элементе нашел свойство "ТекстРедактирования"
4 Vladimirr
 
07.12.11
00:31
Теперь другая проблема. Каждый раз после вызова обработчика - весь текст выделяется и нужно мышкой успеть сбросить выделение и начать дальше вводить данные. Жесть короче
5 H A D G E H O G s
 
07.12.11
00:41
Че то как то ты не с тем боришься, думается.
6 Stim213
 
07.12.11
00:43
(4) ты игру пишешь чтоли?
7 Vladimirr
 
07.12.11
01:01
(6) Нет. просто есть форма для ввода ответа и есть время на ответ. Опытным путем установлено, что если ставить в самом начале этого обработчика возврат, если текстредактирования элемента не равен значению реквизита, то выделения текста не происходит. Но если изменить хотя бы один реквизит формы (не важно выведен он на форму или нет), то выделение происходит и дальнейший ввод текста затруднен.
8 Immortal
 
07.12.11
01:58
отсюда вывод - нефиг подключать обработчики с интервалом 1с.