Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > ImageList


Автор: DimkraS 25.6.2007, 11:58
Добавляю в ImageList картинки из файлов, но максимум удаётся добавить только 19, потом выдаёт ошибку "Out of memory". Пробовал добавлять картинки как программно с помощью ImageList1.ListImages.Add так и вручную через свойство объекта ImageList, итог один. Можно ли как нибуть увеличить возможное количество заносимых картинок? Мне нужно в один ImageList как минимум добавить 31 картинку.

Автор: DelphianOracle 25.6.2007, 13:42
Цитата(DimkraS @  25.6.2007,  11:58 Найти цитируемый пост)
"Out of memory"

Вольный перевод - не хватает памяти. Без комментариев.

Цитата(DimkraS @  25.6.2007,  11:58 Найти цитируемый пост)
Можно ли как нибуть увеличить возможное количество заносимых картинок?

Или сжать картинки, или использовать 2 ImageList

Автор: DimkraS 25.6.2007, 14:30
Использовать два ImageList очень неудобно, но видимо придётся.
А картинки должны быть неизменного размера.

Автор: Akina 25.6.2007, 15:24
Гм, а чем тебя смущает Array of ImageList? В конце концов сделай собственный класс, который динамически добавляет к масиву еще один ImageList, если место в существующих кончилось, и пересчитывает индекс из одномерного в двумерный и обратно.

Во всяком случае, при этом ты получишь достаточно универсальное и масштабируемое (пусть и экстенсивно) решение...

Автор: DimkraS 25.6.2007, 19:20
Спасибо за помощь, но я решил отказаться от использования ImageList, слишком долго подгружаются файлы при открытии большого количества. Решил вместо ImageList сделать массив с хранящимеся в нём путями к файлам и из массива уже открывать.

Автор: Akina 25.6.2007, 22:22
Цитата(DimkraS @  25.6.2007,  20:20 Найти цитируемый пост)
слишком долго подгружаются файлы при открытии большого количества

Сделай асинхронную загрузку... впрочем на VB работа с потоками слегка геморройна...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)