Привет всем!
Пункт меню Window -> Tile Cascade Arrange Icons - определяет поведение, размер и положение открытых окон.
Где в Application указать, чтобы задать начальное поведение, размер и положение открываемых окон в приложение сгенерированом Wizard-ом не меняя параметров в свойствах каждого конкретного окна (Browse)? Где определить этот параметр для всех окон фрейма?
Задать начальное поведение окон фрейма Application
Clarion, Clarion 7
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Developer
- Игорь Столяров
- Ветеран движения
- Сообщения: 8070
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 97 раз
Re: Задать начальное поведение окон фрейма Application
Привет !
Насколько я понимаю в кроликах, "Tile Cascade Arrange Icons" упорядочивает уже открытые окна (как ты абсолютно верно написал)
и не оказывает никакого влияния на вновь открываемые. Т.е. это не свойство окон, а операция над уже открытыми окнами.
А значит ее нельзя определить "для всех окон фрейма". В принципе, можно после открытия каждого окна принудительно выполнять
в AppFrame операцию по упорядочиванию окон, что-то вроде: Post(Event:Accepted,?Arrange) или посылать из открытого окна событие
в AppFrame, по которому будет выполняться эта операция ... Наверно так.
Насколько я понимаю в кроликах, "Tile Cascade Arrange Icons" упорядочивает уже открытые окна (как ты абсолютно верно написал)
и не оказывает никакого влияния на вновь открываемые. Т.е. это не свойство окон, а операция над уже открытыми окнами.
А значит ее нельзя определить "для всех окон фрейма". В принципе, можно после открытия каждого окна принудительно выполнять
в AppFrame операцию по упорядочиванию окон, что-то вроде: Post(Event:Accepted,?Arrange) или посылать из открытого окна событие
в AppFrame, по которому будет выполняться эта операция ... Наверно так.

Make Clarion Great Again ! 
Игорь Столяров
Re: Задать начальное поведение окон фрейма Application
Игорь привет! Спасибо за отклик и ответ!
Ты правильно понял мой вопрос
Попробую твоё решение.
Но ещё я имел ввиду штатную фунцию Wizard-а связанную с порядком расположения вновь открываемых окон.
Если такой функции нет, тогда наверное необходим триггер по событию открытия нового окна фрейма и выполнению операции по упорядочиванию
всех открытых окон.
Пользователь открыл новое окно: новое окно и уже отрытые окна взаимно упорядочились в соответствии с профилем по умолчанию.
Как отследить вновь открытое окно и послать команду на упорядочивание всех окон?
Может есть пример?

Ты правильно понял мой вопрос

Попробую твоё решение.

Но ещё я имел ввиду штатную фунцию Wizard-а связанную с порядком расположения вновь открываемых окон.
Если такой функции нет, тогда наверное необходим триггер по событию открытия нового окна фрейма и выполнению операции по упорядочиванию
всех открытых окон.
Пользователь открыл новое окно: новое окно и уже отрытые окна взаимно упорядочились в соответствии с профилем по умолчанию.
Как отследить вновь открытое окно и послать команду на упорядочивание всех окон?

Может есть пример?
С Уважением, Developer
Developer
- Дед Пахом
- Старичок
- Сообщения: 3299
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 50 раз
- Контактная информация:
Re: Задать начальное поведение окон фрейма Application
если ABC, то можно отнаследовать глобальный WindowManager, переопределить Open(), в котором написать что-то вроде
PARENT.Open()
POST(Event:RearrangeWindows, ,Glo:FrameThread)
PARENT.Open()
POST(Event:RearrangeWindows, ,Glo:FrameThread)
С уважением, ДП
Дед Пахом
- Игорь Столяров
- Ветеран движения
- Сообщения: 8070
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 97 раз
Re: Задать начальное поведение окон фрейма Application
Можно даже попробовать напрямую вызывать операцию:Дед Пахом писал(а):POST(Event:RearrangeWindows, ,Glo:FrameThread)
После Open(AppFrame) добавляем:
Glo:FrameThread = THREAD()
Glo:ItemArrange = ?Arrange
И тогда можно:
PARENT.Open()
POST(Event:Accepted,Glo:ItemArrange,Glo:FrameThread)
Но может быть подвох в том, что вызов операции по событию будет срабатывать до визуализации открываемого окна. Надо пробовать ...
Make Clarion Great Again ! 
Игорь Столяров
Вернуться в «CLARION for Windows»
Перейти
- CW
- ↳ CLARION for Windows
- ↳ CLARION for Internet
- ↳ Clarion.NET
- Эксклюзив
- ↳ Приват
- CLARION и...
- ↳ Reports
- ↳ Железо
- ↳ Готовые программы, шаблоны, библиотеки...
- ↳ cJSON
- ↳ LibCurl
- ↳ MAV
- ↳ SQL, Oracle, ...
- ↳ Multi-программирование(Pascal/Delphi, и т.д.)
- ↳ WinDev
- DOS
- ↳ CLARION for DOS
- Разное
- ↳ Новости
- ↳ English
- ↳ Ресурсы
- ↳ Работа
- ↳ Обо всем ...
- ↳ Обсуждение этого Форума (типа, Гостевая книга)