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

Вниз

DrawText   Найти похожие ветки 

 
race1   (2004-12-22 09:08) [0]

делаю так:

procedure Tfrm.lbMeasureItem(Control: TWinControl; Index: Integer; var Height: Integer)
var
rct: RECT;
begin
SetRect(@rct, 0, 0, lb.Width, 0);
//SelectObject(lb.Canvas.Handle, lb.Font.Handle);
Height = DrawText(lb.Canvas.Handle, PChar(lb.Items[Index]),
 Length(lb.Items[Index]), @rct, DT_WORDBREAK or DT_CALCRECT or DT_CENTER or DT_EXTERNALLEADING);
end;

lb - tlistbox, в котором я рисую. т.е. хочу устанвить высоту элемента равной высоте текста, который ещё разбивается на строки. но если выбрать в lb большой шрифт, то высота элементов почему-то не меняется. хотя в DrawItem я рисую этим же кодом и всё отображается большим шрифтом. даже если раскомментировать закомментированные строки (хотя это и бессмысленно), не помогает


 
Просто Джо ©   (2004-12-22 13:02) [1]

Навскидку: попробуй использовать сначала DrawText с параметром uFormat равным DT_CALCRECT.


 
race1   (2004-12-24 17:02) [2]

странное дело. у меня это дело рисуется, потом юзер выбирает какой-то эл-т, потом всё очищается и заполняется снова. так вот, после первого заполнения всё высчитывается прально, но первое заполнение и рисование листбокса неработает

вариант с calrect не сработал


 
race1   (2004-12-28 17:13) [3]

вариантов нету?

сейчас делаю так: вобще все данные заносятся в листбокс в рантайме. я в режиме дизайнера добавляю какойлибо эл-т в листбокс, при добавлении моих эл-в предварительно очищаю список (т.е. убирается эл-т, добавленный в режиме дизайна). почему-то работает, чудеса...



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

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

Наверх




Память: 0.44 MB
Время: 0.035 c
1-1106744363
Raider
2005-01-26 15:59
2005.02.13
Исходник звонилки


14-1106317972
Aleksandr
2005-01-21 17:32
2005.02.13
Сетевой принтер (что да как)


1-1107013494
rolex
2005-01-29 18:44
2005.02.13
А где находится диалог выбора папки?


6-1101762250
Prankster.
2004-11-30 00:04
2005.02.13
Кривая кодировка в IDSMTP


1-1106797782
bnm
2005-01-27 06:49
2005.02.13
Как реализовать диалог выбора каталога





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