powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Размеры окон в PB 10.5
14 сообщений из 14, страница 1 из 1
Размеры окон в PB 10.5
    #34463136
Trubitsin Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть работающая программа. В ней я открываю response-окно и хочу чтобы оно расположилсь в правом нижнем углу main-окна. В скрипте открытия беру Y-координату main-окна, прибавляю к нему высоту main-окна и отнимаю высоту response-окна. Тоже проделываю и для определения х-координаты: беру X-координату main-окна, прибавляю к нему ширину main-окна и отнимаю ширину response-окна. Окно село куда надо, но РВ 10.5 кикие-то непонятки. Response-окно село ниже и правее. Запустил отладчик и увидел что размеры этих окон не такие как указаны в свойстваx. Отладчик дает высоту окна на 100 единиц, а ширину на 28-29 единиц больше. Это как надо понимать? Проблему решил путем переделки скрипта.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34463187
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такие проблемы были с Windows ХР. Размеры заголовков не совпадают с Windows 2000. Попробуй сделать такое: рабочий стол -> правая кнопка мышки -> Proporties -> на первой вкладке в Theme: выбрать "Windows Classic" вместо "Windows XP". Должно помочь.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34463314
Trubitsin Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RiskaТакие проблемы были с Windows ХР. Размеры заголовков не совпадают с Windows 2000. Попробуй сделать такое: рабочий стол -> правая кнопка мышки -> Proporties -> на первой вкладке в Theme: выбрать "Windows Classic" вместо "Windows XP". Должно помочь.
У меня и стоит "Windows Classic". Я так думаю, но ещё не проверял, что в скрипте открытия окна там стоит то что и задано, но после выполнения скрипта PB изменяет высоту окна с учётом заголовка а ширину и с учетом бордюра. Другого объяснения нет. Но от этого не легче.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34463323
PavelBuilder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еси совсем точно, то нужно вызывать виндовые внешние функции для определения различных метрик окна ( заговок окна, бордюр и пр.) и с учетом полученных чисел и строить фомулу. Но на практике с этим возится лень, потому в твою формулу уже написаную добавляют параметр "gap" котрый формально равен примерно тому что можно получить из метрик и все работает. Учитывая что подобные вещи обычно не пишут без продуманной иерархии классов, если сменится операционка или еще что, просто придется в предках поменять этот самый gap и все. Ну или честно через виндовые вызовы, н ос другой стороны это завязка на операционку и кто знает будт ли работать эти функции когда реально что то сменится а мы на этот код закладывались.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34463488
Trubitsin Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PavelBuilderЕси совсем точно, то нужно вызывать виндовые внешние функции для определения различных метрик окна ( заговок окна, бордюр и пр.) и с учетом полученных чисел и строить фомулу. Но на практике с этим возится лень, потому в твою формулу уже написаную добавляют параметр "gap" котрый формально равен примерно тому что можно получить из метрик и все работает. Учитывая что подобные вещи обычно не пишут без продуманной иерархии классов, если сменится операционка или еще что, просто придется в предках поменять этот самый gap и все. Ну или честно через виндовые вызовы, н ос другой стороны это завязка на операционку и кто знает будт ли работать эти функции когда реально что то сменится а мы на этот код закладывались.
Да... Не знаю считать это ошибкой или нет, но раньше было понятнее. Создавалось окно с конкрентой высотой и шириной и всё. Если в виндовозе я менял высоту заголовка или ширину бордюра, то окно оставалось неизменным, но при этом все изменения происходили за счет полезной плошади окна, а сейчас одна головная боль.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34465507
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
раньше событие первое resize происходило до open
и в событии open вы уже имели корректный размер окна

теперь первое событие resize происходит после open!!!

чтобы триггернуть ресайз просто в open сделайте что-то вроде
Код: plaintext
this.width+= 6 
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34465608
PBGuest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dmitry.раньше событие первое resize происходило до open
Когда это так было?????
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34465670
Фотография Riska
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PBGuest Dmitry.раньше событие первое resize происходило до open
Когда это так было?????
В 7.0 и 8.0 точно было ДО. В других версиях не проверял.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34465725
PBGuest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В PB9.0.3 и 10.5.1 поведение одинаковое - вначале Open потом Resize. В хелпе говориться что до Open никакие события окна не обрабатываются.

Код: plaintext
When a window is opened, other events occur, such as Constructor for each control in the window, Activate and Show for the window
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34466403
Фотография urvas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тоже сталкивался с ситуацией, когда Resize отрабатывался дважды - до и после Open. К сожалению, версии и билды указать не могу(просто не помню), но за слова отвечаю.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34467718
Trubitsin Vladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даю дополнительную информацию.
Response-окно имеет ширину 1097 и высоту 1136 при создании. Имеет заголовок.
Запускаю отладчик ставлю два breakpoint-а. Один во время отрытия окна, второй уже после отрытия когда оно уже реально появилось. Во время открытия (внури скрипта open) оно имело ширину 1106 и высоту 1216, а уже после открытия ширину 1125 а высоту 1236. Т.е имеем три набора разных цифр.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34468811
Фотография ИвановНН
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Напишите в самом начале Open окна (до перемещения в нужное место)
Код: plaintext
Resize( Width, Height )
Все будет нормально.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34469829
Estets
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
urvasЯ тоже сталкивался с ситуацией, когда Resize отрабатывался дважды - до и после Open. К сожалению, версии и билды указать не могу(просто не помню), но за слова отвечаю.
6.хх версии этим грешили. Очень в свое время удивило.
...
Рейтинг: 0 / 0
Размеры окон в PB 10.5
    #34470601
Oleg1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я уже спрашивал про это. Для определения размеров в Open пользуемся WinAPI.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Размеры окон в PB 10.5
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]