打印本文 打印本文 关闭窗口 关闭窗口
Delphi流操作技巧总结
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1740  更新时间:2009/4/23 18:43:23  文章录入:mintao  责任编辑:mintao
ge1.Picture.Bitmap.LoadFromStream(MS);
  FreeMem(pImage);   
  MS.Free;
end;

 Invert函数如下:
function TForm1.Invert
(pImage: pointer; size: Integer): pointer;
var
  pData, pMem: PChar;
  i: Integer;
begin
  pMem:=AllocMem(size);
  CopyMemory(pMem,pImage,size);
  pData:=pMem+54;
  for i:=0 to size-54-1 do
  begin
    pData^:=Char(not integer(pData^));
    pData:=pData+1;
  end;
  Result:=pMem;
end;

---- 1. btnSave的Click事件,这里演示了TMemoryStream的另一种用法,将Stream中的数据写到数据库中去。
var
  MS: TMemoryStream;
begin
  MS:=TMemoryStream.create;
  Image1.Picture.Bitmap.SaveToStream(MS);
  MS.Position:=0;
  Table1.Append;  
 file://在数据库中添加一条记录
  TBlobField(Table1.FieldbyName
(''''image'''')).LoadFromStream(MS);
  Table1.Post;      
file://将所作的更新写入数据库
end;

---- 4. DBNavigator1的Click事件,这里演示了TBlobStream的用法,使用了和写入时不同的方法来读出数据库的图象数据。
var
  MS: TStream;
begin
  with Table1 do
  MS:=CreateBlobStream
(FieldbyName(''''image''''),bmRead);
  Image1.Picture.Bitmap.
LoadFromStream(MS);
  MS.Free;
end;

       全文完,感谢你阅读了这篇文章。本人缺乏可用分了,只好来挣点参与分好兑换。如感觉此文对你有帮助的朋友请投我一票,谢谢。

                                               无情

 

 

 

 

上一页  [1] [2] 

打印本文 打印本文 关闭窗口 关闭窗口