Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2007.01.07;
Скачать: [xml.tar.bz2];

Вниз

Адаптация приложения для 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.01 c
15-1166079260
Loginov Dmitry
2006-12-14 09:54
2007.01.07
Поиск компоненты для формирования путевых отчетов


4-1156278217
Так себе
2006-08-23 00:23
2007.01.07
Минимальное оконное приложение на Delphi 1.0 с использованием Win


15-1166293792
Sholah_Weras
2006-12-16 21:29
2007.01.07
А таки хочу в космонавты.


15-1166173142
alex_***
2006-12-15 11:59
2007.01.07
Не работает сайт. Какие службы должны быть запущены


15-1166291552
ProgRAMmer Dimonych
2006-12-16 20:52
2007.01.07
Снова от меня ламерский вопрос (по PHP на этот раз)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский