|
8.1 Активность формы?? | ☑ | ||
---|---|---|---|---|
0
rutony
12.10.11
✎
17:07
|
ВводДоступен() = ложь, только если открыты модальные окна, либо открыто какое то контекстное меню. А если форма визуально, да или ввобще не активна показывает истина. (Есть обработка в которую выводятся напоминания через обработчики ожидания и обработки оповещения, нужно что она не вылазила при каждом обновление, а только когда активна)
Как побороть? |
|||
1
ssh2006
12.10.11
✎
17:15
|
ВводДоступен() нормально работает
|
|||
2
DrHiHi
12.10.11
✎
17:16
|
ты скажи, что ты хочешь реализовать??
|
|||
3
rutony
12.10.11
✎
17:41
|
(1) Работает, но через опу... если открыто несколько окон, оно всеравно покажет что форма активна...
(2) Вся работа системы организована через обработку, у которой форма выводиться в режиме рабочего стола. На форме выводятся напоминания. Обновление напоминаний на форме происходит через обработчик ожидания, тот вызывает ФормаОповещения. Рабочая форма ловит сообщения через ОбработкаОповещения, определяет что сообщение ей и обновляет количество напоминаний. При этом происходит проверка ВводДоступен(), т.к. если есть отрытые модально окна, либо контекстное меню, происходит баг, форма обработки разварачивается на весь экран, перекрывая меню, даже панель задач Виндовс... в итоге помогает только убийство 1с. Проблема в том что все Ок, но если открыто какое то другое окно, например, форма списка справочнка, либо форма элемента, вообщем что угодно. При срабатывание обработчика ОбработкаОповещения, ВводДоступен() показывает всегда истина, в итоге текущее окно уходит на задний план, а текущим становиться форма с напоминаниями... |
|||
4
rutony
12.10.11
✎
17:44
|
Блин, тяжело объяснить...
Короче, нужно сделать обновление данных на форме, только если она активна, нету перекрывающих окон. |
|||
5
ssh2006
12.10.11
✎
17:47
|
(3) работает верно
ВводДоступен (IsInputAvailable) Синтаксис: ВводДоступен() Возвращаемое значение: Тип: Булево. Истина - ввод данных в форму возможен (форма активна); Ложь - форма не активна. Описание: Определяет, возможен ли ввод данных в форму. Может быть использован для того, чтобы определить, активизирована ли текущая форма. |
|||
6
DrHiHi
12.10.11
✎
17:49
|
я понял.... попробуй прикрепить к краю... мне такое тоже надо было и я открывал просто развернутую форму, разрешал закрытие формы и она вылазила наперед, если какая-то форма открыта модально, то окно обработки можно было закрыть... обработка выполнялась через каждые полчаса %))) троль рулит ;)))
|
|||
7
rutony
12.10.11
✎
17:56
|
Все спасибо, победил.
Механизм, был взят из Ут 10.3, там было воткнуто открытие формы, соответсвенно перед обновлением форма открывалась становясь активной. А так комбинация Оповестить, ОбработкаОповещения, ВводДоступен(), все пашет. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |