Главная страница
    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.45 MB
Время: 0.006 c
3-88328
RedKat
2002-04-29 18:10
2002.05.27
Создание DSN


1-88477
cult
2002-05-15 13:00
2002.05.27
Перерисовка компонента.


3-88356
ATLANTIDO
2002-04-30 20:32
2002.05.27
БАЗА


4-88682
Yaro
2002-03-27 23:56
2002.05.27
EnumProps | SetProp | GetProp


1-88490
Ежик
2002-05-15 09:29
2002.05.27
Подскажите, как сделать автоскроллинг в TMemo или TRichEdit?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский