Воскресенье, 03.08.2025, 22:42
Здесь может быть ваша реклама
Меню сайта
Категории раздела
Исходники [2]
Компоненты [22]
Уроки [8]
Программы [1]
Книги [20]
Интерестное
Анекдот:
Друзья сайта
Лучшая партнёрка, постаянные и надёжные выплаты, СУПЕР!!! Лучшие проги рунета!! ВСЁ БЕСПЛАТНО!!
Поиск
Главная » Файлы » Уроки

Разрисовываем TListBox или картинка в Listbox. (Part 2).
[ Скачать с сервера (9.9 Kb) ] 13.07.2009, 18:56
В превыдущем уроке я рассказывал как можно просто и быстро добавить картинки Listbox. В этом уроке мы постараемся немного удучшить и усложнить код, тем самым добавим несколько елементов. Ну начнём.

Создадим новый проэкт и кинем на форму Listbox. После этого также кидаем TImage и можно TButton(для добавления item-ов). Создаём обработчик события OnDrawItem у ListBox1 и прописываем.

Code

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

  with (control as tlistbox).Canvas do
  begin
  brush.Color := clwhite; //цвет прямоугольника(в item-e)
  pen.Color := clgray; //цвет рамки прямоугольника
  font.Color := clblack; //цвет текста
  font.Name := 'tahoma'; //шрифт
  font.Size := 15; //размер текста
  listbox1.ItemHeight := 40; //высота item-a
  fillrect(rect); // очищаем прямоугольник
  draw(rect.Left, rect.Top, // это положение рисунка
  image1.Picture.Bitmap); //рисуем в нём картинку
  textout(rect.Left + 50, rect.Top + 12, //положение текста
  listbox1.Items[index]); //Выводим текст
  end;
end;

Запускаем приложение. Получается неплохо!
Для того что б можно было исспользовать разные ситуации(выбран, наведён...) нужно исспользовать:

Code

  if (State = [odFocused, odSelected]) or (State = [odSelected]) then
begin
.....

Ну вот урок окончен, желаю удачи и до скорых встреч.

Категория: Уроки | Добавил: Vi[rus]
Просмотров: 4278 | Загрузок: 233 | Комментарии: 1 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Инфа
Ваш аватр для форума:


Вы вошли как: Гость
Вы в групе: Гости
Ваш IP: 216.73.216.226
Вы зашли через
Личные сообщения
дней на нашем сайте.

Помощь сайту
Z306916104788
R135831050833
U350149613257
Заранее спасибо.
Статистика
Rambler's Top100
Онлайн всего: 1
Гостей: 1
Пользователей: 0
Copyright BCorp © 2025