Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2007, 11:37   #1
Ray1987
Новичок
Джуниор
 
Регистрация: 09.04.2007
Сообщений: 1
Вопрос Строки в ListBox

Как можно сделать так, чтобы любую строку в ListBox можно было окрасить в свой цвет (как фон так и текст)
Ray1987 вне форума Ответить с цитированием
Старый 10.04.2007, 00:23   #2
dron-s
Форумчанин
 
Регистрация: 04.03.2007
Сообщений: 615
По умолчанию

на событие OnDrawItem попробуй повесить такой код
Код:
with ListBox1 do
begin
  If odSelected in State then
    Canvas.Brush.Color:=clTeal
  else
    begin
      Canvas.Brush.Color:=clWindow;
      Canvas.FillRect(Rect);
      Canvas.TextOut(Rect.Left+2,Rect.Top,Items[Index]);
    end;
писал здесь... могут быть ошибки
dron-s вне форума Ответить с цитированием
Старый 10.04.2007, 00:57   #3
RSLoader
_________
Пользователь
 
Аватар для RSLoader
 
Регистрация: 27.03.2007
Сообщений: 69
По умолчанию

Тема была почти такая же, только про изменение стиля текста там умолчалось. Чуть переделанный код, приведённый там Квэнди:
Код:
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
begin
  with (Control as TListBox).Canvas do
  begin
    if odSelected in State then
    begin
      Brush.Color:=clWhite;
      Font.Color:=clBlack;
      Font.Style:=[fsBold];
    end
    else
    begin
      Brush.Color:=clRed;
      Font.Color:=clYellow;
    end;
    Windows.FillRect(Handle,Rect,Brush.Handle);
    TextOut(Rect.Left,Rect.Top,(Control as TListBox).Items[Index]);
  end;
end;
RSLoader вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй gotex Помощь студентам 4 08.05.2008 02:27
Как перетаскивать строки по ListBox Манжосов Денис :) Помощь студентам 1 06.04.2008 22:54
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. vitalik007 Помощь студентам 1 25.09.2007 20:45
Как заставить Itemindex в ListBox перемещаться при добавлении новой строки на онную ? DartMrakkk Общие вопросы Delphi 10 05.07.2007 11:54
Строки разного цвета в ListBox Viteef Компоненты Delphi 1 09.05.2007 20:19