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

Вниз

BitMap в ListBox-e   Найти похожие ветки 

 
tytus ©   (2004-01-26 15:49) [0]

Господа - просьба не игнорировать как в прошлый раз. Вопрос - как мне в ListBox-e рисовать разные изображения в разных Item-ах, как это сделано в примере VirtualViewer в ListView-e???


 
Юрий Зотов ©   (2004-01-26 15:54) [1]

См. TListBox.OnDrawItem.


 
Sirakuz ©   (2004-01-26 15:56) [2]

Style - csOwnerDrawFixed
Вот код, правда для комбобокса, но для листбокса будет почти тоже самое.
Изображения берёт из imageList"a

procedure TForm1.Combobox1DrawItem(
Control: TWinControl; Index: Integer; Rect: TRect;
State: TOwnerDrawState);
Var
bmp:TBitMap;
begin
Bmp:=TBitmap.Create;
Bmp.Width:=ImageList.Width;
Bmp.Height:=ImageList.Height;
With ComboBox1 do
Begin
ImageList.GetBitmap(index,Bmp);
if (odSelected in State)and(not(odComboBoxEdit in State)) then
Begin
Canvas.Brush.Color:=clNavy;
Canvas.Font.Color:=Color;
End else
Begin
Canvas.Brush.Color:=Color;
Canvas.Font.Color:=clNavy;
End;
Canvas.FillRect(Rect);
Canvas.Draw(rect.Left, rect.Top, Bmp);
Canvas.TextOut(rect.Left+ImageList.Width, (rect.Top+(rect.Bottom-rect.Top) shr 1)-Canvas.TextHeight(items[Index])shr 1, items[Index]);
End;
Bmp.Free;
end;


 
VAleksey ©   (2004-01-26 15:59) [3]

TListBox(Control).Canvas.FillRect(Rect);
ImageList1.Draw(TListBox(Control).Canvas,Rect.Left,Rect.Top,0);
TListBox(Control).Canvas.TextOut(Rect.Left + 40 ,Rect.Top,TListBox(Control).Items[Index]);


 
tytus ©   (2004-01-26 16:22) [4]

>Юрий Зотов.
Ок. А когда я в TListBox.OnDrawItem выполняю if условие then загружаю в битмап рисунок else загружаю в битмап другой рисунок , то ВСЕ рисунки в итемах меняются!!! на последний загруженный. А вот чтоб в каждом итеме - разный рисунок...


 
Юрий Зотов ©   (2004-01-26 16:27) [5]

> tytus © (26.01.04 16:22) [4]

Что где рисуете - то там и рисуется. Что ж еще можно сказать, не видя ни строчки кода?



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
6-16549
Zaratustra
2003-12-03 13:14
2004.02.06
Простая работа с сокетами


14-16637
Cerber
2004-01-13 15:55
2004.02.06
Хостинг


4-16792
moreo_xayam
2003-11-27 13:47
2004.02.06
КАК ОПРЕДЕЛИТЬ HANDLE НАЗНАЧЕНИЯ СООБЩЕНИЯ ?!!!


1-16314
Chlavik
2004-01-25 04:35
2004.02.06
Вот так вот WinXp.... PS_USERSTYLE


3-16116
kaif
2004-01-15 17:45
2004.02.06
Установил Yaffil_877ss. Не работает UDF.