起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 204|回复: 5

【结帖】shuTRichEdit如何显示RTF格式中的数据**

[复制链接]
发表于 2008-5-9 13:57:23 | 显示全部楼层 |阅读模式
表中MAINBODY是以二进制,RFT格式存储的,但我用下面代码
var
  lStream :  TMemoryStream;
begin
  Inherited;
  lStream :=TMemoryStream.Create;
  TBlobField(DataSet.FieldByName('MAINBODY')).SaveToStream(lStream);
  RichEdit1.Lines.LoadFromStream(lStream);
end;

TRichEdit里面显示不出来
回复

使用道具 举报

发表于 2008-5-9 14:10:43 | 显示全部楼层
你这个字段是怎么存储的呢?贴代码看下。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-9 14:33:14 | 显示全部楼层
procedure TRichEditBJ.SaveRichEditDB(ADataSet :TSQLDataSet;AFileName :String);
var
  lMemoryStream :TMemoryStream;
  lBlobField: TBlobField;
begin
  try
    if not (ADataSet.State in [TDatasetState.dsInsert,TDataSetState.dsedit,TDatasetStatE.dsNewValue]) then
      ADataSet.Edit;
    lMemoryStream :=TMemoryStream.Create;
    Editor.Lines.SaveToStream(lMemoryStream);
    lBlobField := TBlobField(ADataSet.FieldByName(AFileName));
    lMemoryStream.Position := 0;
    lBlobField.LoadFromStream(lMemoryStream);
    ADataSet.Post;
  except

  end;
end;
回复 支持 反对

使用道具 举报

发表于 2008-5-9 15:03:02 | 显示全部楼层
1楼代码这么写看下吧。
  lStream :=TMemoryStream.Create;
  try
    TBlobField(DataSetBrokerBZSJJ1.DataSet.FieldByName('QZ')).SaveToStream(lStream);
    lStream.Position := 0;
    RichEdit1.Lines.LoadFromStream(lStream);
  finally
    lStream.Free;
  end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-5-9 16:04:45 | 显示全部楼层
oK 搞定了
回复 支持 反对

使用道具 举报

发表于 2008-5-9 16:05:57 | 显示全部楼层
好的,谢谢反馈。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-12 11:07 , Processed in 0.047183 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表