Я конечно извиняюсь, а что для того, что бы закрыть окно - его обязательно нужно сначала показать ?!
Мигание окна при печати
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Мигание окна при печати
За теми кто отстал - не возвращаться. (С) Кодекс
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Мигание окна при печати
Да. Всё волшебно - спасибо !
Только наверно, лучше стирание параметров окна делать после проверки его существования и после его скрытия ?
Код: Выделить всё
W &= NULL
IF NOT SELF.KeepVisible
IF NOT SELF.Preview &= NULL AND NOT SELF.Report &= NULL AND NOT SELF.SkipPreview
W &= SYSTEM{PROP:TARGET} + 0
IF NOT W &= NULL
TARGET{PROP:Hide} = TRUE
W{prop:Icon} = '' ! *** KreatoR ***
W{prop:NoFrame} = True ! *** KreatoR ***
W{prop:Text} = '' ! *** KreatoR ***
END
END
END
За теми кто отстал - не возвращаться. (С) Кодекс
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
Мигание окна при печати
Ну, да. Согласен. Вдруг, действительно, окна не будет.Игорь Столяров писал(а): ↑07 Декабрь 2018, 11:29 Только наверно, лучше стирание параметров окна делать после проверки его существования и после его скрытия ?
А вообще хорошо, что сырцы есть. А не закрытый ящик. У меня таких заплаток вагон и маленькая тележка (утрирую немного). SV реагировать вряд ли будет.
We are hard at work… for you.
Мигание окна при печати
Если закрыты все окна треда, тем более с атрибутом MDI, происходит переключение на другой тред.
Вот у меня есть совершенно нелепая функция, в некоторых местах заменяющая стандартный Popup, потому что после выхода
регулярно случается авария или возврат не туда.
То же самое - если хочется открыть документ по ShellExecute и более-менее адекватно вернуться обратно. Скорее всего, и здесь аналогичная проблема.
Вот у меня есть совершенно нелепая функция, в некоторых местах заменяющая стандартный Popup, потому что после выхода
регулярно случается авария или возврат не туда.
Код: Выделить всё
MyPopup PROCEDURE (S) ! Declare Procedure
W WINDOW(''),AT(-100,-100,1,1),GRAY
END
CODE
Open(W)
Display()
Accept
If Event() = Event:OpenWindow
L#=Popup(S)
Break
End
End
Close(W)
0{Prop:Active}=True
Return(L#)
Мигание окна при печати
1. Так и остался непонятным вопрос, что же такое W &= System{Ptop:Target} + 0
2. А зачем все манипуляции с фреймом и иконкой, если окно все равно прячется.
Загнать его за край экрана по SetPosition - и точно не увидим
2. А зачем все манипуляции с фреймом и иконкой, если окно все равно прячется.
Загнать его за край экрана по SetPosition - и точно не увидим
- Дед Пахом
- Старичок
- Сообщения: 3133
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 10 раз
- Поблагодарили: 28 раз
- Контактная информация:
Мигание окна при печати
Обычный dereference значения SYSTEM{PROP:TARGET} в ссылку на окно?
С уважением, ДП
- Игорь Столяров
- Ветеран движения
- Сообщения: 7373
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 13 раз
- Поблагодарили: 48 раз
Мигание окна при печати
Как я понимаю - все проперти возвращают тип STRING. Поэтому при присвоении адреса "+ 0" это неявное преобразование в LONG.
Сейчас отрицательные координаты работают. Но кто знает, что придёт в голову завтра разработчикам Clarion ?
Как это будет работать при включённом скроллинге внутри APPFRAME или при расширении рабочего стола на 2 монитора ?
И т.д. Слишком много вопросов …
За теми кто отстал - не возвращаться. (С) Кодекс
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
Мигание окна при печати
Они и так не mdi.
Пока окно схайдено, проблем нет. Но чтобы сделать на него таргет, приходиться делать анхайд. И в этот момент оно становиться видным. Причём принудительная установка размеров в ноль ни к чему не приводит, поскольку у окна есть текст, иконка и рамка. Их и надо убрать. Я пока не пойму - почему без этих костылей при выходе из превью фокус улетает на другое приложение? В описании окна ничего странного не наблюдаю. Где-то в тексте prop:Active для приложения в 0 выставляется? Маловероятно.
We are hard at work… for you.
-
- ✯ Ветеран ✯
- Сообщения: 1702
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 9 раз
- Поблагодарили: 4 раза
Мигание окна при печати
может потому, что в W (W &= System{Ptop:Target} + 0) записывается номер Tread-а окна в винде, а не апп
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
-
- ✯ Ветеран ✯
- Сообщения: 4983
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 7 раз
- Поблагодарили: 20 раз
Мигание окна при печати
Разбираться неохота. Вообще весь текст в этом методе представляется каким-то костылём .gopstop2007 писал(а): ↑07 Декабрь 2018, 19:06может потому, что в W (W &= System{Ptop:Target} + 0) записывается номер Tread-а окна в винде, а не апп
We are hard at work… for you.