Привет Всем!
Не пойму что за проблема с открытием окна.
В документации сказано:
Window Usage
OPEN activates an APPLICATION or WINDOW for processing. However, nothing is displayed until a DISPLAY statement or the ACCEPT loop is
encountered. This allows an opportunity to execute pre-display code to customize the display.
Но после применения свойства Prop:Maximize к окну (до DISPLAY или ACCEPT) оно показывается и тем самым не дает сделать "pre-display code". То есть поля показываются без ресандинга, а потом приводятся к нужному размеру/расположению. Тем самым получается дергание окна.
Ситуация: С55H
Игорь Веснин success@mail.iks.ru
(Добавление)
За присваиванием различным PROP-ам значений зачастую стоят вызовы функций из внутренней кухни клариона. Смею предположить, что W{Prop:Maximize} = 1 вызывает ShowWindow(W{PROP:Handle}, SW_SHOWMAXIMIZED).
--
Best regards,
Maxim Yemelyanov,
Enigma Soft Company
phone: +380 572 177977
WEB: http://enigmasoft.com.ua
e-mail: clalist@enigmasoft.com.ua
ICQ: 12253836
Написал: ClaList(2)
Открытие окна
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
А что ты хотел? PROP:Maximize ты сделал до входа в ACCEPT-цикл, тогда как ресайзинг, естественно, обрабатывается в ACEEPT-е по событию EVENT:Sized. Т.е. до DISPLAY/ACCEPT нужно вызвать метод ресайзера, приводящий к изменению положения/размеров контролов.
Алексей,
начальник отдела ПТО
ООО "ОРК"
mail: alex@jrcn.donetsk.ua, icq: 62605472
www: http://www.nikasoft.co.uk
http://www.clarionline.h1.ru (FAQ-онлайн)
origin: Я не злопамятный, но злой и память у меня хорошая!
(Добавление)
Беда в том что чтобы применить метод ресайзинга, надо сначала привести окно к нужному размеру, а потом уже под эти размеры изменять положения/размеры контролов. Так вот после применения PROP:Maximize окно показывается (о чем не сказано в документации) с необработанными контролами. Потом контролы обрабатываются и получается дергание экрана.
В принципе проблема "криво" решена тем что явно указано "Maximize" в окне и снята возможность "Сохранение расположения окна".
Игорь Веснин
ну сделай просто
просле OPEN(Window)
Window{PROP:hide} = True
а на событие EVENT:OpenWindow
Window{PROP:Hide} = False
и не будет моргания
Andrew Myalin
andrew@arsis.ru
http://mavcla.arsis.ru (MAV Direct ODBC)
ICQ: 10659412
Yahoo group: clarion@yahoogroups.com
Написал: ClaList(2)
Алексей,
начальник отдела ПТО
ООО "ОРК"
mail: alex@jrcn.donetsk.ua, icq: 62605472
www: http://www.nikasoft.co.uk
http://www.clarionline.h1.ru (FAQ-онлайн)
origin: Я не злопамятный, но злой и память у меня хорошая!
(Добавление)
Беда в том что чтобы применить метод ресайзинга, надо сначала привести окно к нужному размеру, а потом уже под эти размеры изменять положения/размеры контролов. Так вот после применения PROP:Maximize окно показывается (о чем не сказано в документации) с необработанными контролами. Потом контролы обрабатываются и получается дергание экрана.
В принципе проблема "криво" решена тем что явно указано "Maximize" в окне и снята возможность "Сохранение расположения окна".
Игорь Веснин
ну сделай просто
просле OPEN(Window)
Window{PROP:hide} = True
а на событие EVENT:OpenWindow
Window{PROP:Hide} = False
и не будет моргания
Andrew Myalin
andrew@arsis.ru
http://mavcla.arsis.ru (MAV Direct ODBC)
ICQ: 10659412
Yahoo group: clarion@yahoogroups.com
Написал: ClaList(2)
Я использую использую ШВС там эти строки как раз и прописаны, но они не помогают.
Причем, до "Window{PROP:Hide} = False" контролы не ресайзятся.
У меня стоит С55h. Может быть в других версиях эта проблема решена.
Игорь Веснин
смотря каким ресайзером пользоваться
Andrew Myalin
Написал: ClaList(2)
Причем, до "Window{PROP:Hide} = False" контролы не ресайзятся.
У меня стоит С55h. Может быть в других версиях эта проблема решена.
Игорь Веснин
смотря каким ресайзером пользоваться
С55G, на H есть кое какие проблемы с поточностьюУ меня стоит С55h. Может быть в других версиях эта проблема решена.
Andrew Myalin
Написал: ClaList(2)