Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
4-16824
Владислав
2003-11-27 10:16
2004.02.06
Tooltips в Toolbar под XP.


3-16109
3APA3A
2004-01-15 23:49
2004.02.06
Как в DBGrid засунуть данные из нескольких таблиц?


1-16312
del_programmer
2004-01-25 16:37
2004.02.06
Help


6-16544
V.exeR
2003-12-02 06:57
2004.02.06
И еще... Как узнать размер и время создания файла


9-16028
greenrul
2003-07-21 23:06
2004.02.06
Волновой алгоритм поиска пути -




   Наверх