как открыть окно втихую?
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- Бывалый
- Сообщения: 61
- Зарегистрирован: 12 Декабрь 2008, 12:09
- Откуда: Верхний Уфалей
- Контактная информация:
как открыть окно втихую?
незнаю, может вопрос банальный
научите как открыть окно "MDI Child" втихую
суть.. например, есть приложение в нем масса процедур "Process"
когда запускается процесс окно процесса становится активным что естественно, но напрягает.
Приложение висит в трее, запустило отработку задач (около сотни процессов)
в это время в винде работать невозможно фокус выпрыгивает с активного окна (например с ворда или с той же клаши),
приходится брать мышу и тыкать, чтоб вернуть фокус обратно.
научите как открыть окно "MDI Child" втихую
суть.. например, есть приложение в нем масса процедур "Process"
когда запускается процесс окно процесса становится активным что естественно, но напрягает.
Приложение висит в трее, запустило отработку задач (около сотни процессов)
в это время в винде работать невозможно фокус выпрыгивает с активного окна (например с ворда или с той же клаши),
приходится брать мышу и тыкать, чтоб вернуть фокус обратно.
- Игорь Столяров
- Ветеран движения
- Сообщения: 7385
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 14 раз
- Поблагодарили: 49 раз
Re: как открыть окно втихую?
Может быть я Вас огорчу, но RunTime Clarion поддерживает до 64 процессов.vd-vuf писал(а):запустило отработку задач (около сотни процессов)
С другой стороны - а что мешает:
1. В окне процесса установить аттрибут ToolBox - тогда на него фокус не будет переводится.
2. Даже если фокус переводится - можно запомнить номер потока текущего окна и принудительно вернуть его обратно.
Это обсуждалось - поройся в форуме.
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Бывалый
- Сообщения: 61
- Зарегистрирован: 12 Декабрь 2008, 12:09
- Откуда: Верхний Уфалей
- Контактная информация:
Re: как открыть окно втихую?
устарели ваши цифры это было до с6, я вас удивлюИгорь Столяров писал(а):Может быть я Вас огорчу, но RunTime Clarion поддерживает до 64 процессов.vd-vuf писал(а):запустило отработку задач (около сотни процессов)
С другой стороны - а что мешает:
1. В окне процесса установить аттрибут ToolBox - тогда на него фокус не будет переводится.
2. Даже если фокус переводится - можно запомнить номер потока текущего окна и принудительно вернуть его обратно.
Это обсуждалось - поройся в форуме.
Код: Выделить всё
The maximum number of simultaneously available execution threads in a single application is theoretically unlimited. However, the word "unlimited" means that limits are applied not by the Clarion Runtime Library, but by the Operating System’s environment settings, i.e., limited to the amount of virtual memory available for the process, or limited number of threads in the system, or limited number of windows (including controls) that can be opened simultaneously in the process, etc. Therefore, THREAD always returns a value in the range of one (1) to the upper limit of the SIGNED integer (2,147,483,647).
с ToolBox поэксперементирую
- Игорь Столяров
- Ветеран движения
- Сообщения: 7385
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 14 раз
- Поблагодарили: 49 раз
Re: как открыть окно втихую?
Спасибо - буду знать ...
С другой стороны у меня есть программа в которой плодятся мелкие процессы и выполняют обработку.
В общем-то все работает где-то до 25-35 процессов одновременно, потом начинаются жуткие тормоза, которые рано или поздно заканчиваются GPF. Причем не зависимо от кол-ва оперативной и виртуальной памяти. Поэтому указанные в описании цифры все-таки следует воспринимать как теоритические лозунги ...
С другой стороны у меня есть программа в которой плодятся мелкие процессы и выполняют обработку.
В общем-то все работает где-то до 25-35 процессов одновременно, потом начинаются жуткие тормоза, которые рано или поздно заканчиваются GPF. Причем не зависимо от кол-ва оперативной и виртуальной памяти. Поэтому указанные в описании цифры все-таки следует воспринимать как теоритические лозунги ...
За теми кто отстал - не возвращаться. (С) Кодекс
- StillZero
- Ветеран
- Сообщения: 454
- Зарегистрирован: 06 Июль 2005, 2:17
- Откуда: Хабаровск
- Контактная информация:
Re: как открыть окно втихую?
варианты. но не точные, проверять надо
1. перед "показом" окна 0{Prop:Hide} = TRUE, хз поможет или нет
2. перед открытием окна берем через API GetForegroundWindow() (оно вроде), а после возращаем фокус на место.. SetForegroundWindow
3. стиль скорее всего есть какой нибудь у окна, чтобы фокус не получать... в принципе это тот же вариант, что и тулбокс
1. перед "показом" окна 0{Prop:Hide} = TRUE, хз поможет или нет
2. перед открытием окна берем через API GetForegroundWindow() (оно вроде), а после возращаем фокус на место.. SetForegroundWindow
3. стиль скорее всего есть какой нибудь у окна, чтобы фокус не получать... в принципе это тот же вариант, что и тулбокс
Все сайты закрыты...
-
- Бывалый
- Сообщения: 61
- Зарегистрирован: 12 Декабрь 2008, 12:09
- Откуда: Верхний Уфалей
- Контактная информация:
Re: как открыть окно втихую?
ToolBox - мертвому припарки, при откртытии такого окна, не оно само дак фрейм получает фокус
до открытия окна 0{Prop:Hide} = TRUE просто делает невидимым фрейм
QuickWindow{PROP:Hide} = True - до открытия, бесполезно, после открытия - уже позно
не хотелось связываться с api
до открытия окна 0{Prop:Hide} = TRUE просто делает невидимым фрейм
QuickWindow{PROP:Hide} = True - до открытия, бесполезно, после открытия - уже позно
не хотелось связываться с api
- Игорь Столяров
- Ветеран движения
- Сообщения: 7385
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 14 раз
- Поблагодарили: 49 раз
Re: как открыть окно втихую?
О боже ... Там еще и фрейм ... ?vd-vuf писал(а):не оно само дак фрейм получает фокус
Может быть тогда есть смысл запускать потоки вообще без открытия окон - зачем они если программа свернута в область уведомления ? Или снять с этих окон признак MDI. У меня потоки запускаются как простые процедуры Source - выгребают данные с FTP раздела, формируют отчеты в OO Calc и рассылают их по e-mail. Программа находится трее (или как служба Windows) и активизируется по таймеру. Никаких переводов фокуса на нее нет, да и быть не может - работает уже года 3-4 .... Даже наоборот, помню юзеры просили сделать смену значка когда программа работает - иначе непонятно работает она вообще или нет ...
За теми кто отстал - не возвращаться. (С) Кодекс
-
- Бывалый
- Сообщения: 61
- Зарегистрирован: 12 Декабрь 2008, 12:09
- Откуда: Верхний Уфалей
- Контактная информация:
Re: как открыть окно втихую?
что то непонял, использовать фрейм это дурной тон?Игорь Столяров писал(а):О боже ... Там еще и фрейм ... ?vd-vuf писал(а):не оно само дак фрейм получает фокус
переделать процессы на сурце это конечно был бы выход
переделать шалблон процесса тоже наверное выход
но все это как то через то самое место
ситуация похжа на - есть дырявая лодка, вместо того чтобы заделать дыру, черпаем воду.
а вообще конечно спрашивал с надеждой что у когонибудь есть мягкое решение
принудительное передергивание фокуса с помощью api эт тоже про дырявую лодку
всем спасиба за советы
таки придется что то соображать с шаблоном
- Игорь Столяров
- Ветеран движения
- Сообщения: 7385
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 14 раз
- Поблагодарили: 49 раз
Re: как открыть окно втихую?
Поройтесь в форуме - точно помню, что вопрос переключения фокуса между приложениями обсуждался.
Только немного в другом контесте - при повторном запуске приложения, блокировать запуск и переключать фокус на уже работающую копию приложения.
Ну а насчет переделки процессов - то по Вашей аналогии: нужно иногда вылазить из лодки, и искать другие способы передвижения. Особенно если вместо воды уже давно приходится из лодки вычерпывать песок ...
Только немного в другом контесте - при повторном запуске приложения, блокировать запуск и переключать фокус на уже работающую копию приложения.
Ну а насчет переделки процессов - то по Вашей аналогии: нужно иногда вылазить из лодки, и искать другие способы передвижения. Особенно если вместо воды уже давно приходится из лодки вычерпывать песок ...
За теми кто отстал - не возвращаться. (С) Кодекс