Программа выглядит по-разному на разных компах

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Программа выглядит по-разному на разных компах

Сообщение mishastik » 30.07.2015 11:19:02

Привет всем! Сразу скажу, я не профи в паскале, всё больше пишу встроенное ПО на C и в других средах.
Волею судеб пришлось начать писать софт в Lazarus-е (очень давно немного баловался с дельфями) и прям сразу напоролся вот на какую проблему... При проектировании формы размеры панелей, кнопок, листбоксов и пр. выставил так, чтобы надписи на них помещались и не были обрезанными... Собрал проект... запустил программку и она выглядит на рабочей машине (Win7Pro x64) именно так, как и было задумано.
А при запуске на другой машине (ноутбук Win7Pro x64) выглядит иначе, а именно размеры окна и всего прочего уменьшились немного (я так понимаю это из-за разницы в разрешении мониторов) а вот размер текстов на кнопках, листбоксах и панелях не уменьшился и стал вылазить за пределы и соответственно надписи обрезались.
И ещё, цвета компонентов я не менял, но при запуске на разных машинах некоторые компоненты, а именно чекбоксы, имеют цвет отличный от цвета формы...
Как сделать так, чтобы на разных машинах (виндах) программа имела один и тот же вид (размер надписей - это главное, ну и цветовая гамма)?
Заранее спасибо! :)
mishastik
незнакомец
 
Сообщения: 5
Зарегистрирован: 29.07.2015 22:42:47

Re: Программа выглядит по-разному на разных компах

Сообщение McLion » 30.07.2015 11:34:29

У меня Lazarus не на русском и не на английском, поэтому точно не скажу как все называется. Но в общем в настройках проекта поставь галочку в "dpi- траляля (for Vista+)" Этим включится масштабирование *(скалирование) формы. Посмотри поможет или нет.
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Программа выглядит по-разному на разных компах

Сообщение mishastik » 30.07.2015 11:38:49

Да вроде галка эта стоит... только там есть ещё опции какето. Попробую в разных вариантах.
mishastik
незнакомец
 
Сообщения: 5
Зарегистрирован: 29.07.2015 22:42:47

Re: Программа выглядит по-разному на разных компах

Сообщение Лекс Айрин » 30.07.2015 11:50:08

Это нормально. Если хочешь чтобы было одинаково то, как минимум, нужно выставить свой шрифт и поставлять его (не факт, что у пользователя он есть) с программой. Плюс, к разному разрешению, есть еще и коэффициент масштабирования. Для чекбоксов... либо выставляй их цвет одновременно с цветом формы, либо выставь свойство ParentColor в True. А лучше и ParentFont тоже.

Если размер не так важен, а главное чтобы все поместилось, выставь свойство AutoSize в True и привяжи компоненты друг к другу. Геморроя больше, но зависимость от размера шрифта пропадет.

mishastik писал(а):Как сделать так..... ну и цветовая гамма)?


Выбрать нужный цвет для каждого компонента избегая стандартных цветов.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Программа выглядит по-разному на разных компах

Сообщение mishastik » 30.07.2015 11:58:11

Привязать через редактор привязок?
Поставлять свои шрифты не вариант т.к. программа скорее для узкого круга, технологическая и заморачиваться так не хотелось бы , но и вид у неё должен быть ну хотя бы более менее приличным ))))
ОК, буду пробовать.
mishastik
незнакомец
 
Сообщения: 5
Зарегистрирован: 29.07.2015 22:42:47

Re: Программа выглядит по-разному на разных компах

Сообщение Лекс Айрин » 30.07.2015 12:06:20

mishastik, да.

Самому не хотелось им начинать пользоваться... но без него внешний вид программы может очень сильно поплыть.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград

Re: Программа выглядит по-разному на разных компах

Сообщение McLion » 30.07.2015 12:48:23

Это должно помочь -> http://wiki.lazarus.freepascal.org/High_DPI
Аватара пользователя
McLion
постоялец
 
Сообщения: 332
Зарегистрирован: 06.02.2015 18:41:00

Re: Программа выглядит по-разному на разных компах

Сообщение Vadim » 30.07.2015 13:00:32

mishastik
Я, обычно, длину-ширину компонентов делаю с запасом. Действительно, на разных компах длина надписи бывает разная, но у меня пока ещё не было случая, чтобы что-то не влазило. Я специально проверяю на самом маленьком разрешении - 800х600, чтобы все надписи были видны.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Программа выглядит по-разному на разных компах

Сообщение vitaly_l » 30.07.2015 18:21:39

DPI (для Vista+) - спасибо автору.
А что там означают три возможных варианта? Что конкретно они меняют?
1) asinvoker
2) highestAviilabele?
3) requireAdministrator?


/
Аватара пользователя
vitaly_l
долгожитель
 
Сообщения: 3333
Зарегистрирован: 31.01.2012 16:41:41


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 243

Рейтинг@Mail.ru