Я на моем конце ... пытаюсь получить пользовательский список картинок, TImageList и TListView для совместной работы.Исходная проблема: динамически добавленные изображения не отображаются в списке.Сузили, проблема в TImagelist.Код ниже.ilMain - это TImagelist (определенный в другом месте).Добавление растрового изображения в список, немедленное получение его, сначала «Draw» работает нормально, но sedond не работает ... что мне здесь не хватает?
var i:integer;
test:TSch;
currentimage :TBitmap;
stupid :TBitmap;
begin
currentImage:=TBitmap.Create;
stupid:=TBitmap.Create;
ilMain.Clear;
// currentImage.LoadFromFile('C:\Delphi\piccat\pics\MonaLisa.jpg');
JPeg2Bmp('C:\Delphi\piccat\pics\MonaLisa.jpg',currentImage);
form1.canvas.Draw(100,10,currentimage);
ilMain.Add(currentimage,nil);
ilMain.GetBitmap(0,stupid);
form1.canvas.Draw(200,10,stupid);
EDIT:
Сделано еще немноготестирование на этом;результаты очень запутанные и противоречивые.
Результат на самом деле ОТЛИЧНО зависит от размера входного файла (спасибо за этот указатель, kobik!);кажется, что все, что меньше 256x256, не импортируется в список изображений, в то время как большие изображения ПО X-AXIS (иногда ??) распределены по нескольким элементам.
ilMain был установлен в 256x256 пикселей.
Вот вывод для нескольких входных размеров (X x Y, в пикселях): 950x414 Во время первого рисования отображается все изображение, во втором - 256x256 пикселей в верхнем левом углу.ОДНАКО ТРИ элемента списка TImagelist заполняются с размерами 3x 256x256 пикселей: три изображения, которые можно «вырезать» из основного изображения и при этом иметь размер 256x256 пикселей.Все обрезанные края, меньшие по вертикали или горизонтали, чем 256x256, теряются.
1600x1600 Импортировано шесть изображений;первый ряд полных 256х256 блоков, которые можно вырезать сверху рисунка.Неполный блок справа от tp опущен, и все строки ниже размера Y также 256.
1500x1000 Аналогично предыдущему;импортировано пять предметов.
638x376 Снова похоже;только два элемента теперь "подходят".
197x256 (мой оригинальный тестовый файл, описанный в посте выше) НЕТ ПРЕДМЕТОВ ИМПОРТИРОВАТЬ (X-размер меньше, чем TImaglist X-size?)
256x256 СНОВА, НЕТ ДАННЫХ ИМПОРТИРОВАТЬ
257x257 И ВСЕГО ДАННЫХ НЕ ИМПОРТИРОВАТЬ
260x260 ВСЕГО ДАННЫХ НЕ ИМПОРТИРОВАТЬ
300x300 ВСЕГО ДАННЫХ НЕ ИМПОРТИРОВАТЬ
512x256 Очень странно.Одна картинка импортирована;НО он уменьшен в размере, поэтому примерно 70% исходного изображения соответствует (новому) размеру 256 X.Черная полоса добавлена под картинкой, чтобы восполнить потерянное пространство из-за этого сокращения.
Так что на этом я пока и прекращаю тестирование, и задаюсь вопросом, может ли кто-нибудь здесь пролить свет ...?
РЕДАКТИРОВАТЬ: часть дизайна перенесена на новый вопрос (см. Запрос в комментарии kobik, спасибо человек!)