Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.01.07;
Скачать: CL | DM;

Вниз

Адаптация приложения для Screen.PixelPerInch = 120... как?   Найти похожие ветки 

 
tipman ©   (2006-11-17 09:23) [0]

Писал всю жизнь программы для нормальных настроек рабочего стола, но сейчас возникла проблема. У одних юзеров, конкретно слепых по ходу(стоит 19"" моник, разрешение на нем 800х600, и свойство PixelPerInch у Screen"а равно 120!!!), вся форма расплывается, все компоненты вылазиют за край экрана. Если при компиляции ставлю у формы это свойство равным 120, все нормально становится, но это значение потом почему то не считывается из *.dfm, т.е. я ставлю 120, сохраняю проект, закрываю, смотрю файл dfm - там 120, открываю снова в испекторе объектов стоит 96!!! т.е. он не читает данное свойство из файла, а устанавливает сам. Посему вопрос, каким образом вообще адаптируются приложения под разные настройки рабочего стола(ведь ворда например не расплывается же!!!)?


 
Anatoly Podgoretsky ©   (2006-11-17 09:35) [1]

> tipman  (17.11.2006 09:23:00)  [0]

Это поле только для анализа в рантайм.


 
tipman ©   (2006-11-17 11:08) [2]

Ну хорошо, поле для анализа, тогда почему я перед компиляцией ставлю там 120 и эта форма начинает отображаться нормально, на том самом компе "для слепых"? Значит Delphi компилирует с учётом этого поля!


 
Плохиш ©   (2006-11-17 11:19) [3]


> tipman ©   (17.11.06 09:23)  

Ещё есть свойство Scaled.


 
ЮЮ ©   (2006-11-17 12:49) [4]

ведь ворда например не расплывается же!!!

А где там в ворде компоненты по формам разбросаны?
Меню да тулбар и у тебя не поплывут :)


 
tipman ©   (2006-11-17 13:44) [5]


> Плохиш ©   (17.11.06 11:19) [3]
>
> Ещё есть свойство Scaled.


При установке св-ва Scaled в false отключает последующее масштабирование, т.е. установка 120 в настройках видеокарты просто игнорируется (кроме тулбаров и меню конечно) и текст остаётся маленьким, а хотелось бы чтобы всё вставало так как надо и шрифт увеличивался

> ЮЮ ©   (17.11.06 12:49) [4]
> Меню да тулбар и у тебя не поплывут :)

это точно, не плывут, а вот всё остальное да... так что делать то кто подскажет? чтоб и не разъезжалось, и работало как надо при переключении всяческих видеорежимов, как установка пикселей в дюйме в 120


 
clickmaker ©   (2006-11-17 14:18) [6]


> это точно, не плывут, а вот всё остальное да... так что
> делать то кто подскажет? чтоб и не разъезжалось

использовать Align, Anchors
плюс к этому вручную ставить размер исходя из Screen.PixelsPerInch в OnCraete, например
Меня в свое время спасало от ухода кнопок Ok/Cancel за границы формы. Панель с align=bottom, на нее уже кнопки с Anchors = bottom, right


 
Наиль ©   (2006-11-17 15:42) [7]

> Панель с align=bottom, на нее уже кнопки с Anchors = bottom,
> right

Если сделать панель прижатую книжнему краю, на неё панель прижатую к правом краю, а уже на неё кнопки с обычными анкерами, то кнопки не убегают.
Когда у меня возникла сложность с маштабирование StringGrida в при разных разрешениях, то пришлось хранить размеры колонок и строк в относительных размерах. А при изменении разрешения, пересчитывал в физические (пикселы).
Для удобства процедуру пересчёта поместил в потомка от StringGrid.



Страницы: 1 вся ветка

Текущий архив: 2007.01.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.032 c
15-1165953376
oxffff
2006-12-12 22:56
2007.01.07
Вопрос для Cyraxa. Как модифицировать GOF паттерн Visitor


3-1161369447
alex_sz
2006-10-20 22:37
2007.01.07
Размер базы *.gdb


15-1165849993
Rule
2006-12-11 18:13
2007.01.07
Мож кто знает компилятор на windows mobile 5


15-1166183512
Tupoy
2006-12-15 14:51
2007.01.07
Help для Delphi


6-1155292138
Orxan
2006-08-11 14:28
2007.01.07
Как проверит существование того или иного почтового ящика,