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

Вниз

Мой вариант управления размером тулбара :)   Найти похожие ветки 

 
eSKey   (2002-05-16 10:50) [0]

Не все же вопросы писать, надо и ответы иногда ;) Если помните, я спрашивал как правильно подогнать размер тулбара, не получалось через Width & Heigth. Оказалось, что на тестовых компах стоит не только высокое разрешение, но и крупных шрифт в настройках экрана. Соответственно рабочий код (проверен сейчас):

//Images - ImageList кнопок Toolbar"a
//ViewR - Toolbutton с самым длинным кэпшн, при Autosize все кнопки будут одинаковы по ширине
procedure TMainForm.FormCreate(Sender: TObject);
yCaption:=getsystemmetrics(SM_CYCAPTION);
yFrame:= getsystemmetrics(SM_CYFRAME);
yFrame:=yFrame*2;
Xfactor:=Images.Height+MyToolBar.Canvas.TextHeight(ViewR.Caption);
TBXSize:=MyToolBar.Canvas.TextWidth(ViewR.Caption)+getsystemmetrics(SM_CXFRAME)*2;
minYsize:=Xfactor+yFrame;
minYsize:=yFrame+yCaption+minYsize;
minXsize:=MyToolBar.ButtonCount*TBXSize;

Возможно такой код выглядит не слишком красиво и очевидно, однако размеры получаются абсолютно те, что нужно (могу выложить скриншот).

Вопрос по ходу: как программно определить системные настройки масштабирования шрифта (Дисплей::Свойства::Настройка::[Дополнительно])?

ЗЫ: Спасибо за вчерашний совет по тредам! Надо было мне выложить весь текст конструктора, там был еще один баг с недосыпа :) - CopyFrom в несозданный стрим (запутала фраза из хелпа - Using CopyFrom eliminates the need for the user to create, read into, write from, and free a buffer when copying data.).


 
Игорь Шевченко ©   (2002-05-16 11:09) [1]


> Вопрос по ходу: как программно определить системные настройки
> масштабирования шрифта (Дисплей::Свойства::Настройка::[Дополнительно])?


В Delphi - Screen.PixelsPerInch
Через API, соответсвенно,
GetDeviceCaps(DC, LOGPIXELSY);



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
3-88339
pegas7
2002-04-30 13:14
2002.05.27
Параметры с нулевым значением


4-88669
slym
2002-03-23 19:18
2002.05.27
Как сделать оконную функцию на чтение/запись в файл


8-88568
Val
2001-12-27 10:48
2002.05.27
ClipBoard->JPEGImage


1-88449
Art1
2002-05-17 15:31
2002.05.27
Как сделатьт указатель на переменную?


6-88581
ProgXP
2002-03-11 13:39
2002.05.27
Хочу написать свой firewall !!!