真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么使用FastReportVCL的TfrxReport組件

這篇文章主要介紹“怎么使用FastReport VCL的TfrxReport組件”,在日常操作中,相信很多人在怎么使用FastReport VCL的TfrxReport組件問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么使用FastReport VCL的TfrxReport組件”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)建站主營安陽網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都APP應(yīng)用開發(fā),安陽h5成都微信小程序搭建,安陽網(wǎng)站營銷推廣歡迎安陽等地區(qū)企業(yè)咨詢

FastReport VCL是用于Delphi,C ++ Builder,RAD Studio和Lazarus的報(bào)告和文檔創(chuàng)建VCL庫。它提供了可視化模板設(shè)計(jì)器,可以訪問最受歡迎的數(shù)據(jù)源,報(bào)告引擎,預(yù)覽,將過濾器導(dǎo)出為30多種格式,并可以部署到云,Web,電子郵件和打印中。

近日,F(xiàn)astReport VCL更新至v6.9,在新版本中,在PDF導(dǎo)出中增加了對以下對象的交互式表單支持:文本,復(fù)選框和圖片。能夠通過InteractiveFormsFontSubset屬性將所需的字形僅包含在交互式形式中。同時(shí)修復(fù)了多個(gè)Bug問題。歡迎下載體驗(yàn)。(點(diǎn)擊下方按鈕下載)

立即點(diǎn)擊下載FastReport VCL v6.9最新版

加載和保存報(bào)告

默認(rèn)情況下,報(bào)告表單與項(xiàng)目表單一起存儲(chǔ),即存儲(chǔ)在DFM文件中。在大多數(shù)情況下,不需要任何其他操作,因此您無需采取特殊措施即可加載報(bào)告。如果您決定將報(bào)告表單存儲(chǔ)在文件中或DB BLOb字段中(這提供了極大的靈活性,即您可以在不重新編譯程序的情況下修改報(bào)告),則必須使用以下TfrxReport方法來加載和保存報(bào)告:

function LoadFromFile(const FileName: String; ExceptionIfNotFound: Boolean = False): Boolean;

從文件中加載具有給定名稱的報(bào)告。如果第二個(gè)參數(shù)等于“ True”,但找不到該文件,則它將生成異常。如果文件加載成功,則返回“ True”。

procedure LoadFromStream(Stream: TStream);

從流中加載報(bào)告

procedure SaveToFile(const FileName: String);

將報(bào)告保存到具有指定名稱的文件中

procedure SaveToStream(Stream: TStream);

將報(bào)告保存到流中

帶有報(bào)告表單的文件默認(rèn)情況下具有“ FR3”擴(kuò)展名。

例子:
Pascal:

frxReport1.LoadFromFile('c:\1.fr3');
frxReport1.SaveToFile('c:\2.fr3');

C ++:

frxReport1->LoadFromFile("c:\\1.fr3");
frxReport1->SaveToFile("c:\\2.fr3");

設(shè)計(jì)報(bào)告

調(diào)用報(bào)表設(shè)計(jì)器是通過TfrxReport.DesignReport方法執(zhí)行的。設(shè)計(jì)人員必須包含在您的項(xiàng)目中(使用TfrxDesigner組件或?qū)ⅰ?frxDesgn”單元添加到使用列表中就足夠了)。

該DesignReport方法采用兩個(gè)默認(rèn)參數(shù):

procedure DesignReport(Modal: Boolean = True; MDIChild: Boolean = False);

Modal參數(shù)確定設(shè)計(jì)者是否應(yīng)該是模態(tài)的。MDIChild參數(shù)允許使設(shè)計(jì)器窗口成為MDI子窗口。

例子:

frxReport1.DesignReport;

運(yùn)行報(bào)告

應(yīng)用以下兩種TfrxReport方法之一將啟動(dòng)報(bào)告:

procedure ShowReport(ClearLastReport: Boolean = True);

啟動(dòng)報(bào)告并在預(yù)覽窗口中顯示結(jié)果。如果“ ClearLastReport”參數(shù)等于“ False”,則該報(bào)告將添加到先前構(gòu)建的報(bào)告中,否則將清除先前構(gòu)建的報(bào)告(默認(rèn)情況下)。

function PrepareReport(ClearLastReport: Boolean = True): Boolean;

在不打開預(yù)覽窗口的情況下啟動(dòng)報(bào)告。參數(shù)分配與“ ShowReport”方法中的相同。如果成功構(gòu)建了報(bào)告,則返回“ True”。

在大多數(shù)情況下,使用第一種方法更為方便。它會(huì)立即顯示預(yù)覽窗口,同時(shí)繼續(xù)構(gòu)建報(bào)告。

如果需要在先前構(gòu)造的報(bào)表中添加另一個(gè)報(bào)表(此技術(shù)用于批量報(bào)表打?。瑒t可以方便地使用“ ClearLastReport”參數(shù)。
例子:

frxReport1.ShowReport;

預(yù)覽報(bào)告

可以通過兩種方式在預(yù)覽窗口中顯示報(bào)告:通過調(diào)用TfrxReport.ShowReport 方法(如上所述)或借助該TfrxReport.ShowPreparedReport方法。在第二種情況下,不執(zhí)行報(bào)告構(gòu)造,但顯示完成的報(bào)告。這意味著,您應(yīng)該在PrepareReport方法的幫助下預(yù)先構(gòu)建它,或者從文件中加載以前構(gòu)建的報(bào)告(請參閱加載和保存完成的報(bào)告)。

例子:
Pascal:

if frxReport1.PrepareReport then
  frxReport1.ShowPreparedReport;

C ++:

if(frxReport1->PrepareReport(true))
  frxReport1->ShowPreparedReport();

在這種情況下,報(bào)告構(gòu)建首先完成,然后顯示在預(yù)覽窗口中。構(gòu)造大型報(bào)告可能要花費(fèi)很多時(shí)間,因此使用ShowReport異步方法比PrepareReport/更好ShowPreparedReport。默認(rèn)情況下,可以通過TfrxReport.PreviewOptions屬性分配預(yù)覽設(shè)置。

打印報(bào)告

在大多數(shù)情況下,您將從預(yù)覽窗口中打印報(bào)告。要手動(dòng)打印報(bào)告,應(yīng)使用以下TfrxReport.Print方法,例如:

frxReport1.LoadFromFile(...);
frxReport1.PrepareReport;
frxReport1.Print;

同時(shí),將出現(xiàn)可以設(shè)置打印參數(shù)的對話框。您可以默認(rèn)分配設(shè)置,并在該TfrxReport.PrintOptions屬性的幫助下禁用打印對話框。

加載并保存完成的報(bào)告

可以從預(yù)覽窗口執(zhí)行。這也可以在TfrxReport.PreviewPages方法的幫助下手動(dòng)執(zhí)行:

function LoadFromFile(const FileName: String; ExceptionIfNotFound: Boolean = False): Boolean;
    procedure SaveToFile(const FileName: String);
    procedure LoadFromStream(Stream: TStream);
    procedure SaveToStream(Stream: TStream);

分配和參數(shù)類似于相應(yīng)的TfrxReport方法。默認(rèn)情況下,包含完成的報(bào)告的文件的擴(kuò)展名為“ FP3”。

例子:
帕斯卡:

frxReport1.PreviewPages.LoadFromFile('c:\1.fp3');
frxReport1.ShowPreparedReport;

C ++:

frxReport1->PreviewPages->LoadFromFile("c:\\1.fp3");
frxReport1->ShowPreparedReport();

注意:完成報(bào)表加載后,將通過ShowPreparedReport方法執(zhí)行其預(yù)覽!

匯出報(bào)告

可以從預(yù)覽窗口執(zhí)行。也可以通過TfrxReport.Export方法手動(dòng)執(zhí)行該操作。在此方法的參數(shù)中,應(yīng)指定要使用的導(dǎo)出過濾器:

frxReport1.Export(frxHTMLExport1);

導(dǎo)出過濾器組件必須可用(您必須將其放在項(xiàng)目的窗體上)并已正確調(diào)整。

創(chuàng)建一個(gè)自定義預(yù)覽窗口

FastReport在標(biāo)準(zhǔn)預(yù)覽窗口中顯示報(bào)告。如果由于某種原因它不適合您,則可能會(huì)創(chuàng)建一個(gè)自定義預(yù)覽表單。為此,TfrxPreview設(shè)計(jì)了FastReport組件面板中的組件。要顯示報(bào)告,應(yīng)將此TfrxReport.Preview屬性的鏈接分配給該屬性。

使用TfrxPreview組件時(shí)有兩個(gè)典型的問題。它不處理鍵(箭頭,PgUp,PgDown等)和鼠標(biāo)滾輪(如果有)。要TfrxPreview使用鍵,請將焦點(diǎn)傳遞給它(例如,可以在OnShow表單的事件處理程序中完成):

frxPreview.SetFocus;

要TfrxPreview使用鼠標(biāo)滾動(dòng),必須創(chuàng)建OnMouseWheel表單的事件處理程序并TfrxPreview.MouseWheelScroll在此處理程序中調(diào)用方法:

procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState; 
  WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
  frxPreview1.MouseWheelScroll(WheelDelta);
end;

到此,關(guān)于“怎么使用FastReport VCL的TfrxReport組件”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!


當(dāng)前標(biāo)題:怎么使用FastReportVCL的TfrxReport組件
轉(zhuǎn)載來于:http://weahome.cn/article/jhjsoe.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部