ListView + OnDrawItem + ImageList

0

Mam mały problem z dodawaniem ikon do listview po wykorzystaniu OnDrawItem do "ręcznego" rysowania za pomocą polecenia canvas. Normalnie, bez ręcznego rysowania, dodawanie ikon z ImageList jest proste. Jednakże po przejściu na ręczne rysowanie znalazłem możliwość dodawania ikony z pliku poprzez załadowanie do zmiennej typu TBitmap i wyrysowaniu za pomocą: ListView1.Canvas.Draw(Rect.Left, Rect.Top, Bitmapa).

Czy może mi ktoś pomóc w załadowaniu ikony przy "ręcznym" rysowaniu listview bezpośrednio z ImageList?

0

Odpowiedź znalazłem na stronie: http://groups.google.pl/group/borland.public.delphi.vcl.components.using.win32/browse_thread/thread/15bb5209e5d8d417/207bddd2c8034741%23207bddd2c8034741
W procedurze: DrawItem(Sender: TCustomListView; Item: TListItem; Rect: TRect; State: TOwnerDrawState) dodać należy zapis:

ImageList1.Draw(listView1.Canvas, Rect.Left, Rect.Top, Item.Index).
  • gdzie Item.Index jest indeksem ikony znajdującej się w ImageList1.

1 użytkowników online, w tym zalogowanych: 0, gości: 1