Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Даешь в ListBox картинки! надо чтонить ListBox-подобное 
V
    Опции темы
Kakadu
Дата 23.10.2008, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 273
Регистрация: 19.3.2008

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



Надо найти какую-нить компоненту, типа ListBox, куда можно запихнуть список картинок. Знаю, что в Borland C++Builder, за это отвечал ListBox, но вот в реализации на С# я испытываю некотрые трудности. Не получается... 
Вопрос: как реализовать это? (или посоветуйте иную компоненту какую-нить)


--------------------
Добрые мариносы долго кормили украдкой маленьких зерлингов. От этой украдки зерлинги пухли и дохли
PM MAIL   Вверх
Partizan
Дата 23.10.2008, 10:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

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



Kakadu, Можно просто перекрыть отрисовку каждого элемента ListBox.


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Kakadu
Дата 23.10.2008, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 273
Регистрация: 19.3.2008

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



Идею я понял, но это похоже на извращение......


--------------------
Добрые мариносы долго кормили украдкой маленьких зерлингов. От этой украдки зерлинги пухли и дохли
PM MAIL   Вверх
QryStaL
Дата 23.10.2008, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

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



Цитата(Kakadu @  23.10.2008,  10:34 Найти цитируемый пост)
Надо найти какую-нить компоненту, типа ListBox, куда можно запихнуть список картинок.

ListView


--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
Freak_FB
Дата 23.10.2008, 11:49 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ктулхувед
**


Профиль
Группа: Участник
Сообщений: 296
Регистрация: 13.10.2006

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



ListView, насколько я знаю, отображает иконки. То есть 32*32, 48*48. Шото вроде того.
Лучше всего всё-таки переопределить отрисовку в ListBox.
Вот пример кода для отображения картинок:
Код

private void listBox1_DrawItem(object sender, DrawItemEventArgs e)
{
    int pos = e.Index;
    e.DrawBackground();
    e.Graphics.DrawImage((Image)listBox1.Items[pos], new Point(5, e.Bounds.Top + 5));
    e.Graphics.DrawString(string.Format("Item #{0}", pos), new Font("Comic Sans MS", 32.0f,
        FontStyle.Bold | FontStyle.Italic), Brushes.DarkOliveGreen, new Point(125, e.Bounds.Top + 5));
    e.DrawFocusRectangle();
}

private void Form1_Load(object sender, EventArgs e)
{
    listBox1.Items.AddRange(new object[] { imageList1.Images[0], imageList1.Images[1], imageList1.Images[2], imageList1.Images[3] });
}

Использовать для ListBox DrawMode - OwnerDrawFixed. Высоту элемента ItemHeight - 100. Картинки в ImageList размерами 100 * 100.

P.S.: кто подскажет как избавиться от мерцания при изменении размеров формы, а, следовательно, при изменении размеров ListBox?

Это сообщение отредактировал(а) Freak_FB - 23.10.2008, 11:58


--------------------
user posted image
user posted image
Тонет Ктулху, все медведы горят в огне.
Я Креведко, очень страшно сегодня мне.

PM MAIL ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


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

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




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


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

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