|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Не ругайтесь на меня; ListBox ItemDraw))
Необходимо сделать что бы в листе рисовались разные Bitmap'ы вопрос как?. Помогите пожалуйста.
Вот мой Код(не ругайте только): Код:
var Bmp: array[1..3] of TBitmap; i: Integer; Код:
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); begin with ListBox1.Canvas do begin FillRect(Rect); Draw(Rect.Left+2,Rect.Top+2,Bmp[1]); //<--Вот не знаю что тут сделать. TextOut(Rect.Left+2+32,Rect.Top+36 div 2,ListBox1.Items[index]); end; end; Код:
procedure TForm1.FormCreate(Sender: TObject); begin for i:=1 to 3 do begin Bmp[i] := TBitmap.Create; Bmp[i].LoadFromFile(ExtractFilePath(Application.ExeName)+ 'Data\Objects_'+IntToStr(i)+'.bmp'); end; end; Заранее большое спасибо!!!! |
#2
|
|||
|
|||
А в чем проблема?
По коду похоже на правду. Только там у самого контрола, вороде, надо правильный стиль выставить, иначе он не пользуется твоим эвентом. Или вопрос в другом? |
#3
|
||||
|
||||
Проблема в том что, мне нужно подгрузить в лист 3 разных Bitmap'a.
Но вот как это сделать. Когда я меняю BMp[1] на Bmp[2] - лист полностью обновляется. И все итемы меняются на одинаковые изображение. |