Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.09.04;
Скачать: [xml.tar.bz2];

Вниз

Image   Найти похожие ветки 

 
Lina   (2003-08-21 08:58) [0]

Уважаемые мастера! Как в Image загрузить изображение из потока


 
Skier   (2003-08-21 08:59) [1]

Image.Picture.Bitmap.LoadFromStream(...)


 
Lina   (2003-08-21 09:10) [2]

Я получаю ошибку: "Canvas does not allow drawing"


 
Skier   (2003-08-21 09:12) [3]

>Lina (21.08.03 09:10) [2]
Код покажи.


 
Lina   (2003-08-21 09:14) [4]

В начале получаю поток на NMStrmServ1:

procedure TForm3.NMStrmServ1MSG(Sender: TComponent; const sFrom: String;
strm: TStream);
var
FotoUser:TForm_Foto;
begin
MyFStream := TFileStream.Create(".\"+sfrom+".bmp", fmCreate);
MyFStream.CopyFrom(strm, strm.size);
sleep(3000);
FotoUser:=TForm_Foto.Create(Application);
FotoUser.Show;

end;

а потом
при открытии 2 формы:
Image1.Picture.Bitmap.LoadFromStream(form3.MyFStream);


 
MBo   (2003-08-21 09:20) [5]

MyFStream.Position:=0;


 
Skier   (2003-08-21 09:21) [6]

1) Вот рабочий код :
var
AStream : TMemoryStream;
begin
AStream := TMemoryStream.Create;
try
AStream.LoadFromFile("c:\000\abort.bmp");
Image1.Picture.Bitmap.LoadFromStream(AStream);
finally
AStream.Free;
end; //try
end;
2) Может быть у тебя получаются неверные данные в MyFStream ?
Проверь...


 
Lina   (2003-08-21 09:26) [7]

Пишет,что файла такого нет. А когда делаешь обновление директории, то файл появляется. Что делать, уже все попробывала


 
Skier   (2003-08-21 09:28) [8]

Очень похоже что сей путь ".\"+sfrom+".bmp" неверный...


 
Lina   (2003-08-21 09:37) [9]

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


 
Palladin   (2003-08-21 09:58) [10]


> Lina (21.08.03 09:37) [9]

Логика, подсказывает мне, что нужно таки подождать при открытии формы2 до того как файл появится, и после уже открываться.
Или ты пути перепутал(а).


 
sniknik   (2003-08-21 10:30) [11]

Lina (21.08.03 09:37) [9]
> происходит передача файла (изображение) моей программе из сети
как происходит? махаеш черенком волшебной лопаты и имадж переносится? ;о)) или всетаки пользуешся чемто компонентами какими?

просто после передачи компоненты вполне могут освобождать поток, и второй раз к нему уже не обратишся. вот к примеру код вызываемый в Indy после WriteContent (правда это посылка потока, но в приеме может быть аналогично)
procedure TIdHTTPResponseInfo.ReleaseContentStream;
begin
if FreeContentStream then begin
FreeAndNil(FContentStream);
end else begin
FContentStream := nil;
end;
end;


(FreeContentStream по дефаулту true)


 
Zelius   (2003-08-21 11:26) [12]

попробуй закрыть поток:
MyFStream := TFileStream.Create(".\"+sfrom+".bmp", fmCreate);
MyFStream.CopyFrom(strm, strm.size);
MyFStream.Free;

что бы файл создался и записался, может поэтому его еще нет на диске.


 
Lina   (2003-08-21 13:25) [13]


> sniknik ©
махаеш черенком волшебной лопаты

procedure TForm3.NMStrmServ1MSG Выше надо было смотреть
NMStrmServ1 - вот мой черенок


 
sniknik   (2003-08-21 13:47) [14]

видел.

у меня переменные еще забавнее называются, что с того? (гадать влом, привела бы исходный тип/класс, другое дело)


 
Zelius   (2003-08-21 14:13) [15]

попробуй так сделать:

Bitmap := TBitmap.Create;
try
MyFStream.Position:=0;
Bitmap.LoadFromStream(MyFStream);
Image1.Picture.Graphic := Bitmap;
finally
Bitmap.Free;
end;

у меня так с JPeg работает.


 
Lina   (2003-08-21 14:20) [16]

Спасибо большое - у меня тоже :))



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2003.09.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.009 c
1-10786
Vena
2003-08-22 23:55
2003.09.04
Excel


3-10619
Rel_
2003-08-13 09:16
2003.09.04
запрос SQL


14-10907
Jim
2003-08-18 07:20
2003.09.04
Мужики! Запарился искать CodeRush для Delphi 7...


6-10865
AlexGof
2003-06-30 13:35
2003.09.04
как переименовать Attachments фай в NMPOP3 Fastnet


14-10916
gn
2003-08-15 11:58
2003.09.04
Сегодня пятница и думаю можно расслабится :-)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский