Карта сайтаСсылкиКонтакты

Добавление иконки в ListBox

PDF Печать
Статьи
Программирование на Delphi

Чтобы добавить иконку в TListBox, выполните следующее:


procedure TForm1.Button1Click(Sender: TSender); 
var Icon: TIcon; 
begin 
 Icon := TIcon.Create; 
 Icon.LoadFromFile('DELPHI.ICO'); 
 ListBox1.Items.AddObject('Delphi', Icon); 
end;

И далее:


procedure TForm1.ListBox1DrawItem(Control: TWinControl; 
    Index: Integer;
    Rect: TRect; State: TOwnerDrawState);
var

  Icon: TIcon;
  Offset: Integer; { Смещение текста }
begin

  with (Control as TListBox).Canvas do
    { Рисуем на управлении }
  begin
    FillRect(Rect); { Очищаем прямоугольник }
    Offset := 20; { Смещение по умолчанию }
    Icon := TIcon((Control as TListBox).Items.Objects[Index]);
      { Получаем иконку для этого пункта }
    if Icon <> nil then
    begin
      Draw(Rect.Left + 1, Rect.Top + 2, TIcon((Control as
        TListBox).Items.Objects[Index]));

      Offset := Icon.width + 9;
        { Добавляем пробел между иконкой и текстом }
    end;
    TextOut(Rect.Left + Offset, Rect.Top + 7, (
        Control as TListBox).Items[Index])
      { Вывод текста }
  end;
end;

 

Комментарии   

 
0 #1 Maks 19.01.2015 19:09
Комментарий удален.
Цитировать
 
 
0 #2 Serge 20.01.2015 07:47
Цитирую Maks:
Комментарий удален.

Свойство Style ListBox необходимо установить в lbOwnerDrawFixe d
Цитировать
 

Добавить комментарий


Защитный код
Обновить