Модераторы: Snowy, Alexeis, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> возможно ли засунуть в combo box bmp рисунки, полоса прокрутки для большого кол-ва bmp 
V
    Опции темы
~FoX~
Дата 3.2.2010, 08:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЕ рыжий!!!
****


Профиль
Группа: Участник Клуба
Сообщений: 2819
Регистрация: 8.10.2003
Где: Зеленоград

Репутация: 2
Всего: 68



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

procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
begin
 ComboBox1.Canvas.FillRect(Rect);
 ImageList1.Draw(ComboBox1.Canvas, Rect.Left, Rect.Top, Index);
 ComboBox1.Canvas.TextOut(Rect.Left + 18, Rect.Top+2, ComboBox1.Items.Strings[Index]);
end;

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  ImageList1.Draw(Form1.Canvas, 50, 50, ComboBox1.ItemIndex);
end;



--------------------
user posted image
…множественность никогда не следует полагать без необходимости…
PM MAIL WWW ICQ Jabber   Вверх
darkida
Дата 3.2.2010, 09:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 59
Регистрация: 9.2.2009

Репутация: нет
Всего: нет



Цитата

Жесткий изврат! Каждый итем рисуется сам по себе, не надо не надо ни каких циклов при этом... Иначе ты просто каждый итем 4 раза пытаешься перерисовать...

....................

А зачем ты это пишешь??? А сколько у тебя элементов? А ты знаешь что делает этот код combobox1.ItemIndex:=i;?

Мда я знаю!!!!  ))))))).  Я тока учусь. И почему то думал что он только первый элемент закинет из ImageList. 

Спасибо ~FoX~.

А на клике теперь как писать?  
Код

ImageList4.Draw(form1.Canvas, xx[2], yy[2], i);

 Вместо i          combobox1.itemindex да?

Спасибо еще раз ~FoX~. И это я там еще одну тему создал для новичков не мог ты посмотреть где там ошибка. А то ни кто не отвечает. Еще раз спасибо. Туплю такое бывает. )))


Ой блин еще и торможу. Ты уже ответил. ))))

Это сообщение отредактировал(а) darkida - 3.2.2010, 09:05
PM MAIL   Вверх
artsb
Дата 3.2.2010, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2280
Регистрация: 17.7.2007
Где: центр Вселенной

Репутация: 1
Всего: 64



darkida, вот примерчик:
Код

// после выбора другого Item'ма отрисовываем его в Image1
procedure TForm1.ComboBox1Change(Sender: TObject);
var
 bmp: TBitmap;
begin
 bmp := TBitmap.Create();
 ImageList1.GetBitmap(ComboBox1.ItemIndex, bmp);
 Image1.Picture.Bitmap.Assign(bmp);
 bmp.Free();
end;

procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
begin
 ComboBox1.Canvas.FillRect(Rect);
 ImageList1.Draw(ComboBox1.Canvas,
                  Rect.Left + 2,
                  Rect.Top + 2,
                  Index);
 ComboBox1.Canvas.TextOut(Rect.Left + 38, Rect.Top+12, ComboBox1.Items.Strings[Index]);
end;

procedure TForm1.FormCreate(Sender: TObject);
var
 cnt: integer;
begin
 for cnt := 0 to ImageList1.Count - 1 do
   ComboBox1.Items.Add('string ' + intToStr(cnt+1));
end;



--------------------
Чем отличается умный человек от мудрого?
Умный - выпутается из любой ситуации.
Мудрый - просто в неё не попадёт.
PM MAIL   Вверх
darkida
Дата 3.2.2010, 15:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 59
Регистрация: 9.2.2009

Репутация: нет
Всего: нет



Спасибо. Понял. Все хорошо работает.
Весьма признателен.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0440 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.