| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Масштабируемость формы и картинок |
| Автор: nnn2k 11.9.2018, 20:07 |
| Добрый вечер! Есть Delphi 10.2 и Delphi XE7. Работаю в основном на 10.2, там и начал очередной новый проект. Положил на форму несколько SpeedButton, через ActionList и ImageList привязал событие с картинкой, положил TImage и на нее иконку. В IDE все нормально, а при запуске картинки уменьшаются в два раза. Потом разберусь, подумал. Проект уже сильно развился и настала пора. Начал ковырять свойство формы Scaled, но это приводило только к уменьшению формы в два раза и все. Наконец запустил XE7 и случайно сохранил проект в другое место, из-за чего файл ресурсов (.res) создался заново. И о чудо, картинки стали нормального размера, при чем в любой IDE, главное файл res тот же от XE7 оставлять. Но возникла другая проблема. Нужно, что бы форма соответствовала размерам экрана (именно Screen.DesktopRect), а после XE7 форма стала 1280x720 (в два раза меньше). Удалил файл res, перекомпилировал и картинки стали маленькими, но зато форма соответствовала экрану. Форма так и так на весь экран, но Width и Height разные. Посмотрел свойство формы PixelPerInch и увидел разницу в 2 раза, при значении 192 (от IDE 10.2) форма 2560x1440, при 96 (XE7) - 1280x720. Видимо форма тоже в файл ресурсов ложится как-то. Можно, конечно, поиграть с PixelPerInch, но боюсь, что еще какие-то траблы вылезут. Итого: 1. Почему картинки сохраняются в файл ресурсов в уменьшенном размере, и как исправить/где настроить? 2. Как в файл ресурсов положить форму в нужном dpi что ли, или почему она потом не запускается в соответствии с разрешением экрана? 3. Почему у формы разные PixelPerInch, в зависимости от версии IDE. |
| Автор: Snowy 12.9.2018, 13:29 | ||
Выключи Saled. Меняй размер форм вручную:
Где: 1280 - твоё разрешение 1920 - нужное |