Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.03.2012, 11:12   #1
yaapelsinko
Пользователь
 
Регистрация: 15.01.2012
Сообщений: 67
По умолчанию Разбегаются со своих мест компоненты в формах.

Интересный глюк, и пока что-то не получается найти в гуглях.

В общем, делаю в дельфи 7 программу. Работаю, соответственно, в виндовс 7 (как всё через десять лет сошлось-то!!!). Когда запускаю прожект, всё путём - компоненты в формах все по своим местам.


Однако при запуске на других системах, причём, как семёрке, так и икс пэ, положения и размеры компонентов как-то изменяются в сторону увеличения, что кнопки и края, там, таблиц, выходят за границы форм. Такая ерунда происходит с масштабируемыми формами. Когда размер фиксирован, то клиентская область увеличивается пропорционально, и всё вроде как влазит. Но если размер можно изменять, то клиентская оласть не ресайзится, а вылезшие за её границу компоненты, приякореные к правому и нижнему краю, так и остаются при масштабировании за пределами формы, понятное дело.

В чём тут дело? о_О

упд: в аттаче как это выглядит. Просто тупо всё чуточку больше, как будто действует какое-то масштабирование. Но на системах никакого особого масштабирования не выставлялось, всё по умолчанию. Икспэ так вообще чистая на вм стоит.
Изображения
Тип файла: jpg skrin.jpg (24.2 Кб, 155 просмотров)

Последний раз редактировалось yaapelsinko; 08.03.2012 в 12:07.
yaapelsinko вне форума Ответить с цитированием
Старый 08.03.2012, 12:57   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

7-ке присущь расширенный заголовок.
А т.к. XP это не имеет, то она увеличивает размеры окна.
Человек_Борща вне форума Ответить с цитированием
Старый 08.03.2012, 13:08   #3
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Якоря используйте.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 08.03.2012, 15:36   #4
yaapelsinko
Пользователь
 
Регистрация: 15.01.2012
Сообщений: 67
По умолчанию

А я что делаю? У меня всё приякорено куда надо. Тему читайте. Вы картинку посмотрите - там просто одно окно отмасштабировано относително другого, увеличены размеры компонентов, положения относительно 0:0.

Я, собственно, поискал да нашёл, как этого избежать - отключил в свойствах форм параметр Scale. Разница процентов в 5 получается по размеру. Проблема в том, что а какого ж чёрта у меня на всех неродных системах всё скейлится в большую сторону относительно системы разработки? Нигде никогда подобных настроек не делал, в своей системе у меня разрешение в dpi 100% (96 взш), то, что по умолчанию. А во всех других (семёрка на другом компе, икспэ на другом компе, икспэ на виртуальной машине, свежеустановленная) - скейл в плюс.
yaapelsinko вне форума Ответить с цитированием
Старый 08.03.2012, 15:47   #5
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

А, понял.

А точно DPI = 96 (точно) на обеих системах?

Если да, то это может работать хак для старых программ. Попробуйте явно подцепить манифест с указанием, что ваша программа - "новая" (подробнее - включите requestedExecutionLevel=asInvoker и dpiAware=True).
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мониторинг рабочих мест DenProx Общие вопросы Delphi 4 10.03.2011 11:02
Прокомментировать пару непонятных мест Kapitann PHP 3 21.09.2010 18:35
Аж глаза разбегаются!.. 2pizza Gamedev - cоздание игр: Unity, OpenGL, DirectX 19 29.10.2008 20:17
Поиск узких мест RomanIgorevi4 Общие вопросы C/C++ 8 08.07.2008 18:24
при изменении размера формы, все компоненты на ней оставались на своих местах ***СкаЙ*** Помощь студентам 15 13.06.2007 11:13