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

Вниз

Три вопроса по ListBox у   Найти похожие ветки 

 
Анатолий   (2003-10-01 00:03) [0]

У меня три вопроса по ListBox"у.
1) Как для каждого item"а сделать свой фон(загружаемый из ресурсов)
2)При клике на Item"е фон должен меняться
3)Как снять выделение у Item"a? ну или хотя бы сделать прозрачную рамку?


 
Miwa   (2003-10-01 01:35) [1]

Проработайте событие OnDrawItem.


 
pasha   (2003-10-01 03:35) [2]

Небольшие дополнения:
свойство Style -> lbOwnerDrawFixed и обрабатывать событие OnDrawItem. В данном случае все елементы имеют одинаковую высоту, задаёться свойством ItemHeight.

свойство Style -> lbOwnerDrawVariable и обрабатывать надо два события:
1. событие OnMeasureItem. Установка высоты для одного елемента
2. событие OnDrawItem.
В данном случае все елементы имеют разную высоту, задаёться в обработчике события OnMeasureItem.


 
Анатолий   (2003-10-01 03:50) [3]

Поместить картинку в итем я еще смогу,а как ее сделать фоном???


 
pasha   (2003-10-01 04:11) [4]

Отвечаю на ваш вопрос:


procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
ListBox1.Canvas.StretchDraw(Rect,Image1.Picture.Graphic);
end;



 
Анатолий   (2003-10-01 06:59) [5]

Картинка помещается в итем но текста не видно..:-(


 
Song   (2003-10-01 09:12) [6]

Текст рисуется через DrawText
См. здесь: http://pascal.sources.ru/cgi-bin/forum/YaBB.cgi?board=delphi;action=display;num=1037272197



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

Форум: "Основная";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.01 c
1-40363
Romeo
2003-09-30 16:59
2003.10.13
Как нарисовать что-нибудь на контроле, не имеющем Canvas a?


1-40409
SergSh
2003-09-30 17:46
2003.10.13
Еще вопрос про языки


1-40397
uhnin
2003-09-30 23:17
2003.10.13
Delphi 5 ServisPack


3-40313
Alex21
2003-09-22 10:43
2003.10.13
Базы на серваке


14-40660
Jeer
2003-09-25 18:28
2003.10.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
Английский Французский Немецкий Итальянский Португальский Русский Испанский