我有一個保存在字符串中的jpeg文件。我想將字符串加載/分配給Delphi7中的TImage。我用KOL以下代碼:KOL - 將PStream加載到TImage
var
ImageStream : PStream;
ImageString : String;
MyJpeg : TJpeg;
begin
ImageStream:= NewMemoryStream; // Create New Stream.
ImageStream.Write(ImageString [1], Length(ImageString)); // Fill the stream.
ImageStream.Position := 0; // Set Position to 0.
// ImageStream.SaveToFile('C:\test.jpg', 0, ImageStream.Size); // Debug --> WORKS!
MyJpeg := TJpegImage.Create; // Create a Jpeg Image.
MyJpeg.LoadFromStream(@ImageStream); // ???
Image1.picture.Assign(MyJpeg); // No picture is shown
end;
它應該工作,因爲PStream只是一個指針T流... 但沒有在TImage中顯示圖片... 感謝您的幫助:)
在這裏,我們再次...什麼「不工作」是什麼意思?它以什麼方式「在這裏失敗」?你沒有提供你的問題的必要信息。任何時候你輸入「錯誤」,「失敗」或「不起作用」,你應該輸入的**接下來的事情**正是你的意思,包括你收到的**精確**錯誤信息與他們包含的任何內存地址。我們無法從我們所在的位置看到您的屏幕,也無法看到您的其他代碼。請幫助我們來幫助你。 (而且,就像提示一樣,你應該在* ImageStream.Write之後重置'ImageStream.Position' *,而不是在它之前。) –
我編輯它。謝謝。問題在於Timage沒有顯示圖片。 –
你不是在讀我寫的東西。我會大膽的這次:**你應該重置'ImageStream。位於'ImageStream.Write'之後,而不是之前。** –