Название: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: VVN от Апрель 13, 2015, 15:01 Здравствуйте.
Сделал приложение на Qt 4.8.4. Делал на мониторе 23 дюйма с разрешением 1920х1080. Дело в том что в приложении очень много лейбелов и полос редактирования. При запуске на том же ноутбуке разрешение 1600х900 получается фигня полная. Текст съезжает. Полосу прокрутки ставить не хочется. Скажите в какую сторону копать. Что то не могу найти ясного ответа. Сам думаю, что нужно при запуске программы проверять разрешение системы. После чего настраивать размер шрифта в окнах. Подскажите как правильно масштабировать приложение.. Еще вопрос есть ли где почитать про sizePolicy то что нашел не дает полного понимания. Вернее сказать я им пользуюсь но не знаю насколько правильно. Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: Bepec от Апрель 13, 2015, 15:10 Если у вас всё съезжает, то следует пользоваться компоновкой.
Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: gil9red от Апрель 13, 2015, 15:16 если много лейблов и полос редактор смотрите в сторону хотя бы QGridLayout, а лучше QFormLayout ;)
Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: VVN от Апрель 13, 2015, 15:22 если много лейблов и полос редактор смотрите в сторону хотя бы QGridLayout, а лучше QFormLayout ;) Да дело в том что все в QGridLayout и сделанно. В форме вся компоновка произведена полностью. Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: Bepec от Апрель 13, 2015, 16:21 Вы просите решить проблему и не показываете её.
Не надо так!!! Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: Igors от Апрель 13, 2015, 16:52 Скажите в какую сторону копать. Что то не могу найти ясного ответа. Сам думаю, что нужно при запуске программы проверять разрешение системы. После чего настраивать размер шрифта в окнах. QLayout и QSizePolicy реально работают, ни одного бага я не находил. Ничего кроме букваря (assisiant) не требуется. Да, некоторые вещи лично для меня не интутивны, типа "ожидал так, а оно...", приходилось делать тестовые примеры и экспериментировать - но в конце-концов работало как указано в доке. В общем серьезнее отнеситесь, пример, код - все получится. А не так себе "текст съезжает" (с пол-пинка не пошло) Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: VVN от Апрель 13, 2015, 19:47 Вы просите решить проблему и не показываете её. Не надо так!!! Да вся компановка в Designer сделано не знаю как ее показать. Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: VVN от Апрель 13, 2015, 19:50 Думаете правильно, просто недооцениваете проблему. В общем серьезнее отнеситесь, пример, код - все получится. А не так себе "текст съезжает" (с пол-пинка не пошло) Сегодня целый день провел за компановкой и игрался с sizePolicy небольшие сдвиги есть. Так же изменил размер шрифта в более мелкую сторону. QLayout и QSizePolicy реально работают, ни одного бага я не находил. Ничего кроме букваря (assisiant) не требуется. Да, некоторые вещи лично для меня не интутивны, типа "ожидал так, а оно...", приходилось делать тестовые примеры и экспериментировать - но в конце-концов работало как указано в доке. Я просто думал что есть некий общий подход к проектированию для разных разрешений экрана. Типа как это сделано в Андроиде. Для разных разрешений можно сделать разные лайауты. И потом все автоматом решается. Вот например есть у меня экран 23 дюйма 1920х1080 для него можно вывести текст 24 шрифтом и все помешается. Для ноута 1600х900 это сильно круто и нужен шрифт 16. Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: billy4685 от Апрель 14, 2015, 00:10 Я тоже столкнулся был с подобной проблемой. Я тогда сделал что-то подобное "резиновой формы", используя QGridLayout, QVBoxLayout и QHBoxLayout. Ну у меня главная форма окна была на весь экран, и баги замечались на других расширениях. Искал как решить эту проблему, тогда не нашел. Я тогда выкрутился тем, что все размеры компонентов окна задавал относительно от размера экрана. Для текста подбирал разный текст под разные расширения экрана (смотрел какие размеры у раскрывшейся на весь экран формы и брал нужный размер шрифта). Запаристо конечно, но работало).
Название: Re: Как правильно сделать масштабирование приложения под разные разрешения дисплея. Отправлено: Igors от Апрель 14, 2015, 06:33 По поводу шрифтов. Хороший тон - дать пользователю возможность выбора. Угодить всем "автоматом" не удается. Напр мне нужен шрифт побольше (уже подслеповат), другому наоборот помельче, "чтобы больше влазило"
|