如何解决进度条,直到函数执行
在此代码中, Base64FromBitmap()将图像转换为字符串,然后结果将显示在RichEdit中。有时,此过程需要几秒钟(基于图像的大小)。我想添加一个进度条以显示进度,直到完成该过程。 Base64FromBitmap()函数中没有 For循环。
function Base64FromBitmap(Bitmap: TBitmap): string;
var
Input: TBytesstream;
Output: TStringStream;
Encoding: TBase64Encoding;
begin
Input := TBytesstream.Create;
try
Bitmap.SavetoStream(Input);
Input.Position := 0;
Output := TStringStream.Create('',TEncoding.ASCII);
try
Encoding := TBase64Encoding.Create(0);
try
Encoding.Encode(Input,Output);
Result := Output.DataString;
finally
Encoding.Free;
end;
finally
Output.Free;
end;
finally
Input.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
begin
s := Base64FromBitmap(Image1.Picture.Bitmap);
RichEdit.Text := s;
end;
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。