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


Автор: Dmi3ev 21.6.2008, 13:23
я пишу так
Код

Image1->Picture->LoadFromFile(Memo1->Lines->Strings[i]);

говорит, что не знает расширение  jpg (не дословно)
если я загружаю картинку в TImage ручками, не программно, и ничего не меняю в коде, запускаю, все работает.
после этого я выкидываю картинку из TImage, запускаю, все работает.
а вопрос такой, из-за чего так происходит? (что и где написать, чтобы такого не происходило, те сразу можно было загружать картинки из файла, не проделывая трюки, как я)

Автор: 586 21.6.2008, 14:08
Цитата(Dmi3ev @  21.6.2008,  14:23 Найти цитируемый пост)
если я загружаю картинку в TImage ручками, не программно, и ничего не меняю в коде, запускаю, все работает.

Её билдер конвертирует в bitmap.
Загрузить JPEG вручную можно через TJPEGImage.
Код
#include <jpeg.hpp>

TJPEGImage *img = new TJPEGImage;
img->LoadFromFile(Memo1->Lines->Strings[i]);
Image1->Picture->Bitmap->Assign(img);
img->Free();

Автор: Dmi3ev 21.6.2008, 14:58
586, спасибо! а когда я загружаю картинку в TImage, компилирую, а потом эту картинку удаляю из TImage, где и что прописывается, что мне потом доступно сразу загружать? если неясно, я постараюсь как-то изложить мысль по-другому.

Автор: 586 21.6.2008, 15:46
Цитата(Dmi3ev @  21.6.2008,  15:58 Найти цитируемый пост)
где и что прописывается, что мне потом доступно сразу загружать?

Растр хранится в .dfm-ресурсах в HEX-формате. Загрузить будет проблематично.

Автор: Dmi3ev 22.6.2008, 19:18
понятно, лучше не заморачиваться дальше  smile  спасибо за помощь!

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