![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как учесть масштаб в свойствах экрана (96, 120... т/дюйм)?
_user_ © (2007-10-22 11:09:00)Сворачиваю часть формы:
ClientHight:=ClientHight-100
но на тех компьютерах, где размер установлен иной (чем 96 т/д), получается калиберда, по понятным причинам...
Помогите решить эту головоломку!
Reindeer Moss Eater (2007-10-22 12:53:00) [1]Точно так же
Err_f (2007-10-22 12:26:00) [2]Нашёл:
Как мне получить количество пикселей на дюйм, поддерживаемое принтером?
VertPixelsPerInch := GetDeviceCaps(Printer.Handle, LogPixelsX);
HorzPixelsPerInch := GetDeviceCaps(Printer.Handle, LogPixelsY);
И все примеры - для принтеров! Как для экрана использовать GetDeviceCaps?
Err_f (2007-10-22 11:45:00) [3]
> С какой целью ClientHight меняем?
Скрыть часть настроек...
Как эквалайзер у плеера!
Reindeer Moss Eater (2007-10-22 11:41:00) [4]тогда уж лучше масштабировать фонт у формы в зависимости от текущих настроек экрана пользователя.
KSergey (2007-10-22 11:40:00) [5]> Err_f (22.10.07 11:38) [8]
> > А что надо получить-то?
> k:=(т/дюйм экрана)/96
Я не про то.
С какой целью ClientHight меняем?
Err_f (2007-10-22 11:38:00) [6]
> А что надо получить-то?
k:=(т/дюйм экрана)/96
> на границу какого-либо элемента (визуального компонента)
> на форме.
хм... идея интересная!
KSergey (2007-10-22 11:36:00) [7]А что надо получить-то?
Предлагаю опереться не на текущий ClientHight, а на границу какого-либо элемента (визуального компонента) на форме.
Err_f (2007-10-22 11:28:00) [8]Спасибо! Поищу...
Единственное - что там в результате получится?
integer - 96, 120... ???
Reindeer Moss Eater (2007-10-22 11:26:00) [9]Руками? Кто говорил про руки?
GetDeviceCaps c параметром LOGPIXELSY
Err_f (2007-10-22 11:21:00) [10]Можно... руками!
А программно как?
Если бы я знал ответ - я бы не задавал вопрос!
Reindeer Moss Eater (2007-10-22 11:20:00) [11]так в чем проблема-то?
определить текущие установки экрана разве нельзя?
Err_f (2007-10-22 11:15:00) [12]
> 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:12:00) [13]какую головоломку?