Вверх ↑
Этот топик читают: Гость
Ответов: 2125
Рейтинг: 159
#1: 2007-01-09 22:02:20 ЛС | профиль | цитата
Galkov, закинь в svn изменения:

в Win.pas

...
var ScreenDPI:integer;

implementation
...

Font.FontHeight := _prop_Font.Size * ScreenDPI div -72;

...

Control.Font.FontHeight := Size * ScreenDPI div -72;

...


procedure InitScreenDPI;
var dc:THandle;
begin
dc := GetDC(0);
ScreenDPI := GetDeviceCaps(dc,LOGPIXELSY);
ReleaseDC(0,dc);
end;

initialization

InitScreenDPI;


в hiMainForm.pas

       Font.FontHeight := _prop_Font.Size * ScreenDPI div -72;

и ещё в нескольких компонентах, где ещё стоит size+6.

карма: 1

0
Ответов: 16884
Рейтинг: 1239
#2: 2007-01-10 00:28:21 ЛС | профиль | цитата
tsdima, спасибо - всё отлично.
tsdima писал(а):
и ещё в нескольких компонентах, где ещё стоит size+6.
не нашел. Есть еще в Img_Text , но там не катит.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 9906
Рейтинг: 351
#3: 2007-01-10 07:10:47 ЛС | профиль | цитата
Взял на себя смелость изменить в Img_Text, MainForm, MenuEx
и перенести глобальную переменную в share

Но не проверял во всех деталях. Проверил бы кто...
Плюс к тестируемуму элементу обновлять win и share
карма: 9

0
Разработчик
Ответов: 26109
Рейтинг: 2124
#4: 2007-01-10 11:01:39 ЛС | профиль | цитата
Galkov, а на SVN случаем не выложил?
карма: 22

0
Ответов: 9906
Рейтинг: 351
#5: 2007-01-10 12:06:35 ЛС | профиль | цитата
Здравствуйте приехали

А что же еще могут означать фразы:
tsdima писал(а):
Galkov, закинь в svn изменения:

Galkov писал(а):
Проверил бы кто...


Выложил, и не случаем, а в порядке систематической работы
карма: 9

0
Ответов: 2125
Рейтинг: 159
#6: 2007-01-10 13:34:38 ЛС | профиль | цитата
Galkov, а инициализацию глобальной переменной (InitScreenDPI) ты куда засунул? Ни в hiMainForm.pas, ни в Share.pas нет.

Можно, конечно, вместо глобальной переменной функцию сделать. Всё равно при смене разрешения экрана эта переменная измениться должна. Но тогда ещё и шрифт у всех контролов обновить надо будет
карма: 1

0
Ответов: 9906
Рейтинг: 351
#7: 2007-01-10 13:40:20 ЛС | профиль | цитата
сувал в share, на строку 190
Домой приду проверю
((бутылка пива админу - самый действенный вариант, для захода на форум с работы ))
карма: 9

0
Ответов: 2125
Рейтинг: 159
#8: 2007-01-10 13:48:43 ЛС | профиль | цитата
на строке 190 сама переменная, где, я спрашиваю, процедура InitScreenDPI?
карма: 1

0
Ответов: 8908
Рейтинг: 823
#9: 2007-01-10 14:12:45 ЛС | профиль | цитата
tsdima, "где, я спрашиваю, процедура InitScreenDPI?" - спасибо, я от души посмеялся, но удостоверение сотрудника предъявлять надо!
карма: 19

0
Ответов: 9906
Рейтинг: 351
#10: 2007-01-10 14:32:56 ЛС | профиль | цитата
tsdima, там где ты и написал: в самом конце win.pas
карма: 9

0
Ответов: 2125
Рейтинг: 159
#11: 2007-01-10 14:38:30 ЛС | профиль | цитата
Хм. Действительно - фрей-фе. А зачем тогда глобальную переменную перенёс? Какой смысл переносить её без процедуры инициализации?
карма: 1

0
Ответов: 9906
Рейтинг: 351
#12: 2007-01-10 14:46:54 ЛС | профиль | цитата
Она была видима только для прямых наследников win, теперь для всех (в т.ч. и для процедуры инициализации)
Надо полагать, именно это и означало у Tad-а - "но там не катит"
Там - это в Img_Text

Впрочем, MenuEx даже не наследник win... Но будем надеяться, что проектов с менюхами но без контроллов не бывает...
карма: 9

0
Ответов: 2125
Рейтинг: 159
#13: 2007-01-10 15:05:18 ЛС | профиль | цитата
Понятно. Спасибо за развёрнутый ответ
карма: 1

0
Ответов: 9906
Рейтинг: 351
#14: 2007-01-10 15:13:44 ЛС | профиль | цитата
Да вот наоборот дурные мысли начинают возникать...

Возможен ли у нас проект, в котором используется фонт, но не пристегнут win.pas
карма: 9

0
Ответов: 2125
Рейтинг: 159
#15: 2007-01-10 15:17:07 ЛС | профиль | цитата
Представляю... Консоль с меню или OpenGL? Вряд-ли
Кстати, на фоновое приложение прекрасно ставится GL main Непонятно только, откуда Handle окна брать.
карма: 1

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)