Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
1-88557
Сатир
2002-05-16 15:12
2002.05.27
Определение битмапы для нового компонента


14-88634
hp1100
2002-04-18 15:36
2002.05.27
Подскажите плз линк на сервис


14-88610
keymaster
2002-04-18 23:58
2002.05.27
NFTS


4-88679
Andrew K.S.
2002-03-26 12:34
2002.05.27
WinExec


1-88434
Бывалый
2002-05-17 12:11
2002.05.27
TAdvStringGrid - центрирование ячеек.




   Наверх