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

Вниз

Как учесть масштаб в свойствах экрана (96, 120... т/дюйм)?   Найти похожие ветки 

 
_user_   (2007-10-22 11:09) [0]

Сворачиваю часть формы:
ClientHight:=ClientHight-100
но на тех компьютерах, где размер установлен иной (чем 96 т/д), получается калиберда, по понятным причинам...
Помогите решить эту головоломку!


 
Reindeer Moss Eater ©   (2007-10-22 11:12) [1]

какую головоломку?


 
Err_f   (2007-10-22 11:15) [2]


> Reindeer Moss Eater ©   (22.10.07 11:12) [1]
> какую головоломку?

Как узнать... получить коэффициент:
k:=1 if 96 точек/дюйм
k:=1,25 if 120 точек/дюйм
...
Или лучше- как-нибудь так:

k:=(т/дюйм экрана)/96

Как это реализовать?


 
Reindeer Moss Eater ©   (2007-10-22 11:20) [3]

так в чем проблема-то?
определить текущие установки экрана разве нельзя?


 
Err_f   (2007-10-22 11:21) [4]

Можно... руками!
А программно как?

Если бы я знал ответ - я бы не задавал вопрос!


 
Reindeer Moss Eater ©   (2007-10-22 11:26) [5]

Руками? Кто говорил про руки?

GetDeviceCaps c параметром LOGPIXELSY


 
Err_f   (2007-10-22 11:28) [6]

Спасибо! Поищу...
Единственное - что там в результате получится?
integer - 96, 120... ???


 
KSergey ©   (2007-10-22 11:36) [7]

А что надо получить-то?
Предлагаю опереться не на текущий ClientHight, а на границу какого-либо элемента (визуального компонента) на форме.


 
Err_f   (2007-10-22 11:38) [8]


> А что надо получить-то?

k:=(т/дюйм экрана)/96


> на границу какого-либо элемента (визуального компонента)
> на форме.

хм... идея интересная!


 
KSergey ©   (2007-10-22 11:40) [9]

> Err_f   (22.10.07 11:38) [8]
> > А что надо получить-то?
> k:=(т/дюйм экрана)/96

Я не про то.
С какой целью ClientHight меняем?


 
Reindeer Moss Eater ©   (2007-10-22 11:41) [10]

тогда уж лучше масштабировать фонт у формы в зависимости от текущих настроек экрана пользователя.


 
Err_f   (2007-10-22 11:45) [11]


> С какой целью ClientHight меняем?

Скрыть часть настроек...
Как эквалайзер у плеера!


 
Err_f   (2007-10-22 12:26) [12]

Нашёл:

Как мне получить количество пикселей на дюйм, поддерживаемое принтером?
VertPixelsPerInch := GetDeviceCaps(Printer.Handle, LogPixelsX);
HorzPixelsPerInch := GetDeviceCaps(Printer.Handle, LogPixelsY);


И все примеры - для принтеров! Как для экрана использовать GetDeviceCaps?


 
Reindeer Moss Eater ©   (2007-10-22 12:53) [13]

Точно так же



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

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

Наверх




Память: 0.49 MB
Время: 0.019 c
3-1183366594
GL00m
2007-07-02 12:56
2007.11.11
Delete в SQLQuery не работает


4-1178601036
-=Germe$=-
2007-05-08 09:10
2007.11.11
Еще раз про глобальные ловушки


2-1192442287
Footballer
2007-10-15 13:58
2007.11.11
Блокировка нажатия клавиш


8-1168878219
Denis_ka
2007-01-15 19:23
2007.11.11
Караоке-проигрыватель


3-1183525134
dimaL
2007-07-04 08:58
2007.11.11
SQL запрос