Имя: Пароль:
1C
1С v8
УФ. Как понять, что любой реквизит находится в режиме редактирования?
0 Тенепопятам
 
14.06.23
18:56
Суть в том, что на форме периодически срабатывает обработчик ожидания. Надо, чтобы он не срабатывал в случае, если любой из реквизитов формы находится в режиме редактирования. Можно ли определить в каком режиме находится реквизит
1 vde69
 
14.06.23
19:37
обработчик ожидания срабатывает только в момент простоя, то есть если что-то пишут в поле он не срабатывает
2 lodger
 
15.06.23
09:42
(1) точно? есть справка\ссылка?
тоже сталкивался, что фокус с поля уползает из-за обработчиков и автообновлений списков.
3 Fedor-1971
 
15.06.23
09:56
(2)ФормаКлиентскогоПриложения (ClientApplicationForm)
ПодключитьОбработчикОжидания (AttachIdleHandler)
Синтаксис:
ПодключитьОбработчикОжидания(<ИмяПроцедуры>, <Интервал>, <Однократно>)
Параметры:
<ИмяПроцедуры> (обязательный)
Тип: Строка.
Имя процедуры, подключаемой в качестве обработчика ожидания.
Процедура не должна содержать параметров.
<Интервал> (обязательный)
Тип: Число.
Интервал времени в секундах с точностью до 1/10 секунды, через который будет осуществляться вызов процедуры (положительное число).
Если указано значение меньше 1, то значение третьего параметра должно быть равно Истина.
Внимание! Не следует использовать данный обработчик в качестве таймера. Фактический интервал срабатывания может отличаться от указанного.
<Однократно> (необязательный)
Тип: Булево.
Признак однократного выполнения обработчика ожидания.
Истина - указанный обработчик ожидания будет выполнен один раз.
Значение по умолчанию: Ложь.
Описание:
Подключает указанную процедуру в качестве обработчика ожидания. Процедура будет вызываться в период ожидания системы каждый раз по истечению указанного интервала времени.

!!!!  Вызов будет осуществляться только в "состоянии покоя", то есть в тот момент, когда программа не выполняет никаких действий.


Во время временной блокировки, вызванной методом ЗаблокироватьРаботуПользователя или соответствующей командой "Временная блокировка", обработчики ожидания не выполняются.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение (клиент).
Примечание:
Вызов обработчика ожидания продолжается пока форма не будет закрыта или пока не будет вызван метод формы ОтключитьОбработчикОжидания.

(1) не совсем так.
Если пользователь "задумался" и не вводит буквы, и не дёргает мышку, то сработает обработчик
Что приведёт к потере фокуса или выделению набранного текста (потом нажимаем букву и кирдык всему, что набрали)
4 Fedor-1971
 
15.06.23
10:10
(0) только с извращениями, типа отлавливать "Авто подбор" и ставить блокировку обработчику ожидания
Нужно выяснить зачем подключили обработчик ожидания и выстроить работу формы без оного (возможно, что достаточно использовать ОбработкуВыбора или ОбработкуОповещения у самой формы)
5 Тенепопятам
 
15.06.23
18:36
Понятно, пойдем в обход. Спасибо
6 ДедМорроз
 
15.06.23
20:26
Через поле html-документа.
7 Тенепопятам
 
16.06.23
10:18
(6) Это как?
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший