Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > JPEG в поток, а из потока в TImage


Автор: gray_k 9.9.2003, 10:34
Вот код:
TMemoryStream *ms = new TMemoryStream;
ms->LoadFromFile("1.jpg");
ms->Seek(0,0);
((TJPEGImage*)Image1->Picture)->LoadFromStream(ms);
delete ms;
На строчке с LoadFromStream вываливается AccessViolation.
Если написать сразу Image1->Picture->LoadFromFile("1.jpg"), то всё работает.
В чём проблема, не подскажите?

Автор: DENNN 9.9.2003, 12:49
Цитата
((TJPEGImage*)Image1

Подозрительно. Зачем необходимо приводить указатель? Он что не типа TJPEGImage* ?

Автор: gray_k 9.9.2003, 14:42
Нет, не типа.
Я уже сделал, спасибо.
Вот код:
Код
  TJPEGImage *jpg = new TJPEGImage();
  TMemoryStream *ms = new TMemoryStream();
  quFILE->SaveToStream(ms);
  ms->Seek(0,0);
  jpg->LoadFromFile("1.jpg");
  Image1->Picture->Assign(jpg);
  delete ms;
  delete jpg;

Автор: gray_k 9.9.2003, 14:43
Блин, всё перепутал, извините за бредовы

Автор: gray_k 9.9.2003, 14:45
й код, браузер ещё глючит.
Надо так:
Код
 TJPEGImage *jpg = new TJPEGImage();
 TMemoryStream *ms = new TMemoryStream();
 ms->LoadFromFile("1.jpg");
 ms->Seek(0,0);
 jpg->LoadFromStream(ms);
 Image1->Picture->Assign(jpg);
 delete ms;
 delete jpg;


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