用TImage,TcxImage显示来自数据库的图片jpeg


procedure TForm1.FormCreate(Sender: TObject);
  var
  MyStream:Tmemorystream;
  MyJPEG:TJpegImage;
  begin
  MyStream:=Tmemorystream.Create;
  MyJPEG:=TJpegImage.Create;
  try
  TBlobField(adoquery1.FieldByName('img')).SaveToStream(MyStream);

  MyStream.Position:=0;
  MyJPEG.LoadFromStream(MyStream);
  Image1.Picture.Assign(MyJPEG);
  cxImage1.Picture.Assign(MyJPEG);
  finally
  MyStream.Free;
  MyJPEG.Free;
  end;
  end;

end.

用了 两个图片控件,Timage,TcxImage。
另外,
注意:
网上搜到的代码,对我都没有用,真的很受伤。
它们在
  Image1.Picture.Assign(MyJPEG);
  cxImage1.Picture.Assign(MyJPEG);
这段代码上,是这样的
  Image1.Picture.Graphic.Assign(MyJPEG);//对jpeg
  cxImage1.Picture.Bitmap.Assign(MyJPEG);//对bmp

上面的代码没有对bmp图片试用。
您可以使用TWebModule组件来创建一个Web服务,使用TImage组件来显示上传的图片。以下是一个简单的示例: 1. 在Delphi 11中创建一个新的Web应用程序项目。 2. 在项目中添加一个TWebModule组件,用于处理Web请求。 3. 添加一个TImage组件到Web模块上。 4. 在TWebModule的OnDefaultHandler事件中添加以下代码: ``` procedure TMyWebModule.WebModuleDefaultHandlerAction(Sender: TObject; Request: TWebRequest; Response: TWebResponse; var Handled: Boolean); var FileName: string; begin if Request.ContentFields.Count > 0 then begin FileName := ExtractFileName(Request.ContentFields.Values['file']); if SameText(ExtractFileExt(FileName), '.jpg') or SameText(ExtractFileExt(FileName), '.jpeg') or SameText(ExtractFileExt(FileName), '.png') then begin Image1.Picture.LoadFromFile(FileName); Response.Content := 'File uploaded successfully.'; end else Response.Content := 'Invalid file format.'; end else Response.Content := 'No file uploaded.'; end; ``` 5. 在客户端使用AJAX技术上传图片。以下是一个简单的示例: ``` function uploadFile() { var fileInput = document.getElementById('fileInput'); var file = fileInput.files[0]; var formData = new FormData(); formData.append('file', file); var xhr = new XMLHttpRequest(); xhr.open('POST', '/upload'); xhr.send(formData); xhr.onload = function() { alert(xhr.responseText); }; } ``` 6. 在HTML中添加一个文件上传控件和一个按钮。以下是一个简单的示例: ``` <input type="file" id="fileInput" /> <button onclick="uploadFile()">Upload</button> ``` 这样,当用户选择一个图片文件并点击上传按钮时,图片将被上传到Web服务并显示在TImage组件上。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值