rave分栏打印 (200分) ( 积分: 200 )

  • 主题发起人 主题发起人 wangjiannl
  • 开始时间 开始时间
W

wangjiannl

Unregistered / Unconfirmed
GUEST, unregistred user!
如何实现rave分栏打印,具体要求:前20条记录显示在左边,而后15条记录显示在右边.
比如:姓名 成绩 姓名 成绩
王一 80 李三 95
田一 96 张四 85
孙一 83 ... ..
成二 87
... ...
 
如何实现rave分栏打印,具体要求:前20条记录显示在左边,而后15条记录显示在右边.
比如:姓名 成绩 姓名 成绩
王一 80 李三 95
田一 96 张四 85
孙一 83 ... ..
成二 87
... ...
 
好不容易,等了两天才能发这第一个帖子,
我这个新手眼看着别人的"阅读/回复"次数那么高,好泄气,
大富翁的高手们帮帮我吧!!!!非常感谢
 
rave是什么东东,不过打印你可以手写,自己随意排版,也很简单,不过几十行代码而已.
 
请问踏浪99:
能提示一下思路吗,最好发部分代码过来,参考参考,非常感谢
 
这里人大多用fastreport
我也想用rave,quickreport,怕出了问题找不到人问,呵呵
 
请看看如下代码对你有用吗?我也是在网上发现的,顺便向高手请教RAVE打印图表的问题:网上有一篇文章,说TChart可以调进去,可提供的方法报“类型”方面的错误,如有高手解决了此问题,请发个文章给小弟,谢谢!
问题10: 分栏显示(snaking columns)
    name1 name6
    name2 name7
    name3 name8
    name4
    name5
    窗体添加以下控件Rvsystem1,table1,DataSource1 
    procedure TForm1.Button1Click(Sender: TObject);
begin
ReportSystem1.Execute;
end;

procedure TForm1.ReportSystem1Print(Sender: TObject);
begin
With (Sender as TBaseReport),Table1do
begin
SetFont('Times New Roman', 20);
Bold := True;
Underline := True;
Home;
PrintCenter('NAME LISTING', PageWidth / 2.0);
SectionTop := 1.0;
MarginBottom := 0.75;
Home;
While not Table1.EOFdo
begin
SetColumns(2,0.5);
{OnNewColumn will be called after each call to SetColumns and on each
new column after that}

While (ColumnLinesLeft > 0) AND (NOT Table1.EOF)do
begin
If FieldByName('NAME').AsString <> '' then
begin
Println(FieldByName('NAME').AsString);
end;
{if}
Table1.Next;
end;
{while}

If not Table1.EOF then
begin
NewPage;
end;
{if}
end;
{while}

end;
{ with }
end;

procedure TForm1.ReportSystem1BeforePrint(Sender: TObject);
begin
Table1.First;
end;

procedure TForm1.ReportSystem1NewColumn(Sender: TObject);
begin
With Sender as TBaseReportdo
begin
SetFont('Times New Roman', 14);
Bold := True;
UnderLine := True;
AdjustLine;
Println(' NAME');
SetFont('Arial',12);
AdjustLine;
end;
{with}
end;

procedure TForm1.ReportSystem1PrintFooter(Sender: TObject);
begin
With Sender as TBaseReportdo
begin
MarginBottom := 0.5;
PrintFooter('Page ' + Macro(midCurrentPage)
+ ' of ' + Macro(midTotalPages), pjCenter);
MarginBottom := 0.75;
end;
{with}
end;
 
后退
顶部