Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.02.20;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.02.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.038 c
4-1104127474
iNBox
2004-12-27 09:04
2005.02.20
OEP


14-1106813878
McSimm
2005-01-27 11:17
2005.02.20
О "цензуре"


1-1107511179
JaoDa
2005-02-04 12:59
2005.02.20
Передача события из dll


14-1107244946
Jaxtor
2005-02-01 11:02
2005.02.20
Запуск CGI приложения и обработка его результата


14-1107227109
Думкин
2005-02-01 06:05
2005.02.20
С днем рождения! 1 февраля





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский