翻譯|使用教程|編輯:楊鵬連|2021-06-28 09:42:34.010|閱讀 258 次
概述:FastReport VCL它提供了可視化模板設(shè)計(jì)器,可以訪問(wèn) 30 多種格式,并可以部署到云、網(wǎng)站、電子郵件和打印中。本文介紹了FastReport VCL報(bào)表類層次結(jié)構(gòu)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
FastReport VCL是用于 Delphi、C++ Builder、RAD Studio 和 Lazarus 的報(bào)告和文檔創(chuàng)建 VCL 庫(kù)。它提供了可視化模板設(shè)計(jì)器,可以訪問(wèn) 30 多種格式,并可以部署到云、網(wǎng)站、電子郵件和打印中。
立即點(diǎn)擊下載FastReport VCL v6.9最新版
TfrxComponent是所有 FastReport 組件的基類。這種類型的對(duì)象具有參數(shù),例如坐標(biāo)、大小、字體、可見(jiàn)性和從屬對(duì)象的列表。此類還包含允許在流中保存/恢復(fù)對(duì)象狀態(tài)的方法。
TfrxComponent = class(TComponent) protected procedure SetParent(AParent: TfrxComponent); virtual; procedure SetLeft(Value: Extended); virtual; procedure SetTop(Value: Extended); virtual; procedure SetWidth(Value: Extended); virtual; procedure SetHeight(Value: Extended); virtual; procedure SetFont(Value: TFont); virtual; procedure SetParentFont(Value: Boolean); virtual; procedure SetVisible(Value: Boolean); virtual; procedure FontChanged(Sender: TObject); virtual; public constructor Create(AOwner: TComponent); override; procedure Assign(Source: TPersistent); override; procedure Clear; virtual; procedure CreateUniqueName; procedure LoadFromStream(Stream: TStream); virtual; procedure SaveToStream(Stream: TStream); virtual; procedure SetBounds(ALeft, ATop, AWidth, AHeight: Extended); function FindObject(const AName: String): TfrxComponent; class function GetDescription: String; virtual; property Objects: TList readonly; property AllObjects: TList readonly; property Parent: TfrxComponent; property Page: TfrxPage readonly; property Report: TfrxReport readonly; property IsDesigning: Boolean; property IsLoading: Boolean; property IsPrinting: Boolean; property BaseName: String; property Left: Extended; property Top: Extended; property Width: Extended; property Height: Extended; property AbsLeft: Extended readonly; property AbsTop: Extended readonly; property Font: TFont; property ParentFont: Boolean; property Restrictions: TfrxRestrictions; property Visible: Boolean; end;
TfrxReportComponent = class(TfrxComponent) public procedure Draw(Canvas: TCanvas; ScaleX, ScaleY, OffsetX, OffsetY: Extended); virtual; abstract; procedure BeforePrint; virtual; procedure GetData; virtual; procedure AfterPrint; virtual; function GetComponentText: String; virtual; property OnAfterPrint: TfrxNotifyEvent; property OnBeforePrint: TfrxNotifyEvent; end;繪制對(duì)象時(shí)調(diào)用 Draw 方法。參數(shù)如下:
TfrxDialogComponent = class(TfrxReportComponent) public property Bitmap: TBitmap; property Component: TComponent; published property Left; property Top; end;TfrxDialogControl類是編寫通用控件的基礎(chǔ)類,可以放在報(bào)表中的對(duì)話窗體上。此類包含大多數(shù)常見(jiàn)控件共享的大量常規(guī)屬性和事件。
TfrxDialogControl = class(TfrxReportComponent) protected procedure InitControl(AControl: TControl); public property Caption: String; property Color: TColor; property Control: TControl; property OnClick: TfrxNotifyEvent; property OnDblClick: TfrxNotifyEvent; property OnEnter: TfrxNotifyEvent; property OnExit: TfrxNotifyEvent; property OnKeyDown: TfrxKeyEvent; property OnKeyPress: TfrxKeyPressEvent; property OnKeyUp: TfrxKeyEvent; property OnMouseDown: TfrxMouseEvent; property OnMouseMove: TfrxMouseMoveEvent; property OnMouseUp: TfrxMouseEvent; published property Left; property Top; property Width; property Height; property Font; property ParentFont; property Enabled: Boolean; property Visible; end;
在編寫您自己的自定義控件元素時(shí),您應(yīng)該從此類繼承,將所需的屬性轉(zhuǎn)移到“已發(fā)布”部分,然后為您的公共控件指定新屬性。控制元素的編寫將在下一章詳細(xì)討論。
TfrxViewclass 是大多數(shù)組件的基本類,可以放在報(bào)表設(shè)計(jì)頁(yè)面上。這種類型的對(duì)象具有框架和填充等參數(shù),也可以連接到數(shù)據(jù)源。大多數(shù) FastReport 標(biāo)準(zhǔn)對(duì)象都是從這個(gè)類繼承而來(lái)的。
TfrxView = class(TfrxReportComponent) protected FX, FY, FX1, FY1, FDX, FDY, FFrameWidth: Integer; FScaleX, FScaleY: Extended; FCanvas: TCanvas; procedure BeginDraw(Canvas: TCanvas; ScaleX, ScaleY, OffsetX, OffsetY: Extended); virtual; procedure DrawBackground; procedure DrawFrame; procedure DrawLine(x, y, x1, y1, w: Integer); public function IsDataField: Boolean; property BrushStyle: TBrushStyle; property Color: TColor; property DataField: String; property DataSet: TfrxDataSet; property Frame: TfrxFrame; published property Align: TfrxAlign; property Printable: Boolean; property ShiftMode: TfrxShiftMode; property TagStr: String; property Left; property Top; property Width; property Height; property Restrictions; property Visible; property OnAfterPrint; property OnBeforePrint; end;此類中定義了以下方法:
TfrxStretcheable = class(TfrxView) public function CalcHeight: Extended; virtual; function DrawPart: Extended; virtual; procedure InitPart; virtual; published property StretchMode: TfrxStretchMode; end;給定類的對(duì)象可以被拉伸,也可以在對(duì)象在輸出頁(yè)面上找不到空間的情況下“分解”成碎片。同時(shí),對(duì)象被零散地顯示,直到顯示其所有數(shù)據(jù)。
如果您對(duì)FastReport感興趣,歡迎加入FastReport QQ 交流群:702295239
還想要更多嗎?您可以點(diǎn)擊閱讀【FastReport報(bào)表2021最新資源盤點(diǎn)】,查找需要的教程資源。上是FastReport .NET正在慧都網(wǎng)火熱銷售中!>>查看價(jià)格詳情
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: