Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.12;
Скачать: CL | DM;

Вниз

ListBox   Найти похожие ветки 

 
TimScorp ©   (2006-02-22 23:43) [0]

Доброго времени суток!!!

Вопрос в следующем: можно ли в ListBox"е разные строки писать различными шрифтами, типа:

Выбор 1
Выбор 2

и т.д.
если можно то как???

С уважением TimScorp.


 
Жуков Олег   (2006-02-23 03:01) [1]

В ListBox имеется возможность сопоставить и запомнить для каждой строки ссылку на произвольный объект (Items.Objects). Эту возможность наверно и целесообразно использовать для сохранения шрифта для конкретной строчки. Разумеется о создании объектов TFont и об их корректном удалении ты должен заботиться сам. Но, скорее всего задача проще и требуется некоторое фиксированное количество способов (стилей) отображения строки. В этом случае каждому из стилей сопоставляется целая константа, а в Items.Objects[Index] пишется номер стиля отображения. При этом создавать объекты и освобождать память не надо, т.к. тип TObject совместим с Integer (и по сути им же и является).

Далее, необходимо установить ListBox.Style в lbOwnerDraw написать свой обработчик отрисовки Item (OnDrawItem), и в нём реализовать алгоритм рисования прямоугольника выделения (при необходимости), вывода текста нужным шрифтом, картинок (используя методы и свойтсва ListBox.Canvas, таких примеров в сети есть много, я не стану здесь подробно писать).



Страницы: 1 вся ветка

Текущий архив: 2006.03.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.046 c
2-1140611437
denis24
2006-02-22 15:30
2006.03.12
Удаление контролов с формы в цикле


2-1140802639
13
2006-02-24 20:37
2006.03.12
Редактор иконок


2-1140963693
Новочеркасский Волк
2006-02-26 17:21
2006.03.12
Передать TPoint серверу.


1-1139228062
GreySerg
2006-02-06 15:14
2006.03.12
TOleContainer и Word.Application на форме


3-1137757377
_RusLAN
2006-01-20 14:42
2006.03.12
Нужна идея. Передача даных с одной БД в другую (FireBird)