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

Вниз

Изменение размеров кнопок под размер системного шрифта   Найти похожие ветки 

 
Islander   (2003-12-08 12:06) [0]

Здравсвуйте! Есть такая проблема. Приложение на дельфи.
При моем разрешении 1024x768 + крупный шрифт кнопки выглядят
нормально. Но стоит только поставить мелкий шрифт, как кнопки
становятся в полтора раза больше стандартных. Хотелось бы послушать
мнения, как с этим бороться. Кнопки стандартные TButton,
scaled на форме выключен, включение его в моем случае неуместно.


 
Amoeba ©   (2003-12-08 13:25) [1]

http://cpr.biblio-globus.ru/small_font_defence.htm


 
Islander   (2003-12-08 16:24) [2]

Это все хорошо, шрифты я умею масштабировать. Меня кнопки интересуют.


 
Amoeba ©   (2003-12-08 16:52) [3]

TCustomForm.Scaled


 
Islander   (2003-12-08 17:04) [4]

Я же сказал, что scaled не пойдет, т.к. в моем случае, это неуместно!


 
Dimich1978 ©   (2003-12-08 20:13) [5]

Может быть прочитать скоко пикселей занимает надпись на кнопке и самому промасштабировать?
Я таким образом менял размер формы)подстраивал) под шрифт, чтобы не было такого шрифт маленький и написано 10 букв, а окно на пол экрана.
var
DC: HDC;
hf: THandle;
Size: TSize;
s: string;
MyTextWidth: Integer;
begin
DC := GetDC(xppanel1.Handle);
hf := SelectObject(DC, xppanel1.Font.Handle);
Windows.GetTextExtentPoint32(DC, PChar(s), Length(xppanel1.caption), Size);
MyTextWidth := Size.cx; // Результат
SelectObject(DC, hf);
ReleaseDC(xppanel1.Handle, DC);
fM.Width:=mytextwidth+50;
Не знаю может поможет тебе.


 
Islander   (2003-12-09 00:03) [6]

Спасибо, но вряд ли поможет. Кнопки должны иметь одинаковый размер, а не зависящий от того, сколько на них текста.


 
Livid ©   (2003-12-15 09:28) [7]

Я вижу только один выход. Проверяешь какие шрифты в системе и от этого уже вручную устанавливаешь размеры кнопок. Неприятно, но подействует.



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

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

Наверх




Память: 0.48 MB
Время: 0.026 c
1-86344
Артем
2003-12-12 05:55
2003.12.26
Проблема при работе с двумя потоками


3-86319
Kramar
2003-12-01 22:35
2003.12.26
DBGrid


1-86386
olookin
2003-12-15 14:09
2003.12.26
Как не засорять память?


1-86411
Ivolg
2003-12-14 16:20
2003.12.26
Canvas


1-86433
Strage
2003-12-13 11:29
2003.12.26
Можно ли заменить цвет у clBtnFace?