Delphi Studio » Примеры на Delphi » Примеры на Delphi Система » Изменить цвет фона строки в ListBox »

 
 
 
Приветствуем нового пользователя: fatKeedyzef
 
Реклама на сайте

Изменить цвет фона строки в ListBox

Автор: SkyLine32 | 30-04-2011, 05:28 | Просмотров: 42 | Категория: Примеры на Delphi » Примеры на Delphi Система

0
Изменить цвет фона строки в ListBox

Несколько примеров на Delphi для изменения цвета фона на разных строках в компоненте ListBox.
Перед тем как скомпилировать этот код, нужно в компоненте ListBox в свойстве Style изменить событие OnDrawItem на lbOwnerDrawFixed иначе пример работать не будет.
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
var
  myColor: TColor;
  myBrush: TBrush;
begin
  myBrush := TBrush.Create;
  with (Control as TListBox).Canvas do
  begin
    if not Odd(Index) then
      myColor := clSilver
    else
      myColor := clYellow;
    myBrush.Style := bsSolid;
    myBrush.Color := myColor;
    Windows.FillRect(handle, Rect, myBrush.handle);
    Brush.Style := bsClear;
    TextOut(Rect.Left, Rect.Top, (Control as TListBox).Items[Index]);
    myBrush.Free;
  end;
end;

Еще один пример для изменения строк в ListBox. В этом примере можно установить цвет фона в ListBox только по номеру строки.
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
begin
  with (Control as TListBox).Canvas do
  begin
    case Index of
      0:
        begin
          Font.Color := clBlue;
          Brush.Color := clYellow;
        end;
      1:
        begin
          Font.Color := clRed;
          Brush.Color := clLime;
        end;
      2:
        begin
          Font.Color := clGreen;
          Brush.Color := clFuchsia;
        end;
    end;
    FillRect(Rect);
    TextOut(Rect.Left, Rect.Top, (Control as TListBox).Items[Index]);
  end;
end;
Прямая ссылка на страницу: HTML ссылка: Ссылка для форумов:
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
 
-й день
Онлайн:
rss