Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > Картинки в exe-файлк


Автор: AndreyZ53 15.12.2008, 23:57
Народ подскажети плиз как сделать, чтобы программа грузила картинки не с диска(папки) в TImage, а например c ImageList. Но вот пробывал с ImageList в Image размером 266 на 400, так вот не хочет компилить, виснет и всё наверное из-за большого размера файла, если делаю размер фотки в ImageList 16 на 16 или 32 на 32 то всё нормально грузит в TImage, подскажите плиз как мне в exe-файл фотки, они не должны лежать в папке и грузится, мне говорили что можно в dll их пихнуть, но я в этом не прошареный и незнаю как работать, подскажи плиз. Вот как кодом грузил с ImageList в TImage:

Image:TBitmap;

Image:=TBitmap.Create;

ImageList1.GetBitmap(0,Image);

Image1.Picture.Assign(Image);

Но повторяю вот этим кодом мой файл (картинку) размеров 266 на 400 не загрузило, ну как не загрузило просто виснет и всё при компиляции, а с размером 16 на 16 и 32 на 32 и даже 128 на 128 всё норм работает

Автор: Alexeis 16.12.2008, 00:05
AndreyZ53, без разницы что Dll что в ресурсы программы. Нужно просто скомпилировать ресурс и подключить к проекту, а потом вызвать метод LoadFromResource. В Image не стоит помещать большие картинки, потому что он сначала размещает их в DFM файле, а потом на лету переводит все это в ресурс. Такая операция весьма медленная, потому следует создать ресурс любой другой прогой, такой как Resource Hacker или Restorator. И подключить директивой {$R <имя файла ресурсов>.res}

Автор: AndreyZ53 16.12.2008, 09:23
Ясно, спасибо за помощь буду что нить пробовать

Автор: THandle 17.12.2008, 22:40
AndreyZ53, про это я подробно писал тут:
http://forum.vingrad.ru/index.php?showtopic=225648&view=findpost&p=1624563

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