Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как изменить шрифт у нескольких записей в ListBox ? [D7, NT4]


Max Ivanych ©   (2004-10-28 14:10:00) 

Заранее спасибо за ответ!


ssk   (2004-10-28 15:21:00) [1]

Вот пример.

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
 Rect: TRect; State: TOwnerDrawState);
var
 s: string;
begin
 with ListBox1 do
   begin
     s := Items[Index];
     Canvas.FillRect(Rect);
     case Index of
       0: begin
            Canvas.Font.Name := 'Tahoma';
            Canvas.Font.Style := [fsBold];
          end;
       1: begin
            Canvas.Font.Name := 'Tahoma';
            Canvas.Font.Style := [fsItalic];
          end;
     end;
     Canvas.TextOut(0, Rect.Top, s);
   end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 ListBox1.Style := lbOwnerDrawFixed;
 ListBox1.Clear;
 ListBox1.Items.Add('Первая строка');
 ListBox1.Items.Add('Вторая строка');
end;


Max Ivanych   (2004-10-28 14:52:00) [2]

ssk ©
Спасибо!


ssk   (2004-10-28 14:43:00) [3]

Вот пример.

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;
 Rect: TRect; State: TOwnerDrawState);
var
 s: string;
begin
 with ListBox1 do
   begin
     s := Items[Index];
     Canvas.FillRect(Rect);
     case Index of
       0: begin
            Canvas.Font.Name := 'Tahoma';
            Canvas.Font.Style := [fsBold];
          end;
       1: begin
            Canvas.Font.Name := 'Tahoma';
            Canvas.Font.Style := [fsItalic];
          end;
     end;
     Canvas.TextOut(0, Rect.Top, s);
   end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 ListBox1.Style := lbOwnerDrawFixed;
 ListBox1.Clear;
 ListBox1.Items.Add('Первая строка');
 ListBox1.Items.Add('Вторая строка');
end;


antonn   (2004-10-28 14:17:00) [4]

Использовать OnDrawItems. Смотри, где-то рядом было..


Наверх

Титульная страница Поиск, карта сайта Написать письмо