原創(chuàng)|其它|編輯:郝浩|2012-10-19 10:38:40.000|閱讀 1708 次
概述:本文繼續(xù)接著介紹FastReport報(bào)表示例,運(yùn)用OnManualBuild事件控制報(bào)表邏輯結(jié)構(gòu)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
這個(gè)例子只包含一個(gè)只有一個(gè)用于報(bào)表預(yù)覽按鈕的簡(jiǎn)單窗口。這個(gè)報(bào)表窗口在FastReport報(bào)表設(shè)計(jì)器中看起來就象這樣:
如果你按設(shè)計(jì)器中的預(yù)覽按鈕,你就會(huì)看到“Hello!”行在綠色的背景上。這是因?yàn)閮?個(gè)“主項(xiàng)數(shù)據(jù)”區(qū)域沒有連接到任何數(shù)據(jù)源,所有它們是不打印的。
然而,如果你執(zhí)行這個(gè)例子,你將得到四頁報(bào)表,兩個(gè)“主項(xiàng)數(shù)據(jù)”區(qū)域被打印,并包含其中的文本行。這需要通過下面的FastReport對(duì)象的OnManualBuild事件處理中才能實(shí)現(xiàn):
procedure TForm1.frReport1ManualBuild(Sender: TfrPage);
var
i, j: Integer;
begin
Sender.ShowBandByType(btReportTitle);
for i := 0 to 3 do
begin
Sender.ShowBandByName('Band2');
for j := 0 to 2 do
Sender.ShowBandByName('Band3');
if i <> 3 then
Sender.NewPage;
end;
end;
這個(gè)事件處理中標(biāo)題部分的所有內(nèi)容將通過Sender.ShowBandByType(btReportTitle)打印在第一頁。接下來四個(gè)頁面將通過一個(gè)循環(huán)使用Sender.NewPage方法并將有“Cu-cu!”文本的區(qū)域在每頁中打印三次。
這表明可以通過OnManualBuild事件處理控制報(bào)表內(nèi)容的邏輯結(jié)構(gòu)。這給報(bào)表生成帶來彈性。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件網(wǎng)