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

Вниз

2 проблемы с DrawText   Найти похожие ветки 

 
DmiSb   (2005-01-05 06:31) [0]

Уважаемые мастера, помогите решить две проблемки.

1. Рисую на Bitmap~e рамочку

Br := CreateSolidBrush(DWORD(clBlack));
FillRect(DC, MakeRect( L, T, L+B, T+H ), Br );
FillRect(DC, MakeRect( L, T, L+W, T+B ), Br );
FillRect(DC, MakeRect( L + W - B, T, L+W, T+H ), Br );
FillRect(DC, MakeRect( L, T+H - B, L+W, T+H ), Br );
DeleteObject(Br);

здесь T - Top;
     L - Left;
     W - Width;
     H - Height;
     B:= 1;

Потом внутри рамочки рисую текст

R.Left:=L+1;
R.Top:=T+1;
R.Right:=L+W-1;
R.Bottom:=T+H-1;
Fmt := DT_LEFT or DT_TOP or DT_WORDBREAK;
DrawText(DC, PChar(info.Text), Length(info.Text), R, Fmt );

Все ок. Если изменяю DT_TOP на DT_VCENTER или DT_BOTTOM, выравнивание остается все равно по DT_TOP. Как это решается ?

2. Никак не пойму какой шрифт лучше использовать, чтобы мог принимать по высоте нужные мне значения, а то он либо 10 либо сразу 15, промежуточная высота не получается. И почему-то тот же шрифт 10 полученный на битмапе меньше, чем шрифт у компонентов лежащих на форме с такими же параметрами.

Заранее спасибо.


 
TUser ©   (2005-01-05 13:45) [1]

Может из-за этого?
Value DescriptionDT_BOTTOM Justifies the text to the bottom of the
               rectangle. This value must be combined with
               DT_SINGLELINE
.
DT_VCENTER Centers text vertically (single line only).


 
TUser ©   (2005-01-05 13:46) [2]


> 2. Никак не пойму какой шрифт лучше использовать, чтобы
> мог принимать по высоте нужные мне значения, а то он либо
> 10 либо сразу 15, промежуточная высота не получается. И
> почему-то тот же шрифт 10 полученный на битмапе меньше,
> чем шрифт у компонентов лежащих на форме с такими же параметрами.

TrueType font нужен, а у тебя, значит, растровый.
На форме - MS Sans Serif, а у тебя, наверное, какое-нибудь другой.


 
DmiSb   (2005-01-05 14:44) [3]

2 TUser
Пробовал и MS Sans Serif, и Arial, и Tahoma - все одно. Растровый это какой ?


 
DmiSb   (2005-01-05 14:51) [4]

2 TUser
Спасибо за DT_SINGLELINE. Все заработало.



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

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

Наверх




Память: 0.47 MB
Время: 0.041 c
4-1103998049
Flext@r
2004-12-25 21:07
2005.02.20
Получение списка выполняемых задач винды


11-1091774698
Ricko
2004-08-06 10:44
2005.02.20
7 битная кодировка


14-1106769065
Oddin
2005-01-26 22:51
2005.02.20
Потдержка скинов


14-1106744167
Cosinus
2005-01-26 15:56
2005.02.20
Вылетел комп с синим экраном и каким то непонятным сообщением...


14-1106986303
kaZaNoVa
2005-01-29 11:11
2005.02.20
Посоветуйте Антивирус, какой лучше?