如何做象word中的分栏。(100分)

  • 主题发起人 主题发起人 lizhao
  • 开始时间 开始时间
L

lizhao

Unregistered / Unconfirmed
GUEST, unregistred user!
我想用rxrichedit做一个简单的字处理软件,
我想在里面实现类似与word中的分栏的功能,
怎么做,
在编辑时就显示可以,或者只在打印预览时有效果也行。
有哪位高手可以解决。
 
打印时解决可以, 只要把RICHEDIT拆分成两个RICHEDIT来打印就可以了.
 
to cytown:
我不太明白,在打印时解决,那不是看不成预览的效果,
只有打印后才看的到,
比如在打印完一栏后,如何又返回去打另一栏。
 
打印分栏是在图形方式,而编辑状态则是字符格式,若不进行特殊处理,则无法完成!
可自变个TextOut之类的方法,将分栏文本“输出”到编辑框内。
 
可以用quickreport来预览:-)
 
to cytown:
我正是想用quickreport来做预览,可是如何实现分栏,
还望告之。
 
还是别用QR的好,事特多,特烦。
你可以用Report Builder,实现分栏容易的很。
 
呵呵, 我只是说可以使用qr, 当然任何报表构件(只要支持richedit)都可以.
至于quickreport, 可以这样:
quickrep1.page.columns:=2;
放一个qrband1.bandtype:=rbdetail;
在qrband1上放qrrichedit1.autostrech:=true;
qrband1beforeprint时:qrricheedit1.assign(richedit1);
就可以了.

 
to dj.:
能具体点吗?
thx.
 
to cytown:
我用你说的方式不行,在玉兰时出现错误。
而后我用
QRRichText1.lines:=mainform.editor.lines;
代替
qrrichtext1.assign(mainform.Editor);
则可以玉兰,可是我的editor上的所有格式信息则全部丢失,
全是以纯文本的方式显示的。
*注:editor 是TRXrichedit控件
此外quickreport好象没有原码,能不能介绍一个既能实现我想要的功能
又有原玛的东东。我弄到了一个fastreport,可是demo里面全是乱码,
可能是繁体,不过我试过了所有转换器都不行。
无法看懂,其中就有芬兰的功能。
 
呵呵, 好象是有问题:
这样:
procedure TForm1.QRBand1BeforePrint(Sender: TQRCustomBand;
var PrintBand: Boolean);
begin
RichEdit1.Lines.SaveToFile('temp.rtf');
qrRichtext1.Lines.loadfromFile('temp.rtf');
end;

用tmemorystream也有问题:-(
 
多人接受答案了。
 
后退
顶部