轉帖|使用教程|編輯:況魚杰|2019-09-18 11:01:47.340|閱讀 483 次
概述:本教程轉自屈景輝的Teechart應用技術詳解——快速圖表制作工具一書,本節我們將會介紹此書的第一章的第三小節——Teechart的組成。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Steema是全球領先的圖表類控件公司,總部設在西班牙的巴塞羅那附近,Steema公司的VCL圖表報表控件在全球擁有極高知名度。Steema公司和慧都科技針對中國市場聯合推出中文版TeeChart for .NET圖表控件,一經推出,就在市場上大受歡迎,如果有感興趣的用戶,可以下載試用版體驗一下。
Teechart的組成
圖1是TChart組成示意圖,為便于與組件的屬性、方法和事件對應,圖中的標示采用英文字符方式。TChart的父類是 TCustom Chart,由TCUstom Chart派生了 TChart、 TDBChart、TQRDBChart和 TDecisionGraph四個功能基本類似而各有特點的圖表組件。其相互關系如圖2所示。
圖1
當在Delphi IDE中安裝了TeeChart Pro v7.0后,在DE的 Additional、Data Controls和QReport選項卡上有 TChart、TDBChart和TQRDBChart三個圖表組件。
TChart是一個通用的圖表組件,TDBChart提供了對數據庫技術的支持,TQRDBChart提供了在報表模式中繪制圖表的功能。在QReport選項卡中的組件TQRChart是一個接口型組件,它利用屬性Chart關聯一個TChart或TQRChart將TChart或TDBChart與報表對象Quick Reports對象連接起來,從而使報表中能夠具有圖表功能,其關系如圖3所示。
圖2
圖3
TeeChart的組成元素
TChart由坐標軸、序列、圖例、標題和墻壁等主要元素組成,分述如下
坐標軸( TChartAxis)。TChart的坐標軸有左( LeftAxis)右( RightAxis)、上( TopAxis)下( BottomAxis)、頂部深度( DepthTopAxis:TChartDepthAxis)、右邊深度( DepthRightAxis:TChart DepthAxis)和用戶自定義軸( Custom axes:TChartCustomAxes07個類型。由于用戶可隨意定義若干個坐標軸,所以圖表組件中的坐標軸是無限制的。與深度有關的坐標軸是用于三維圖表繪制的。坐標軸的刻度既可由程序設定,也可由圖表自動設置( Chart1. BottomAxisAutomatic:= true)。
序列( TChartSeries)。是圖表中繪制的各種幾何形狀,其類型將在第4章中詳細介紹。一個圖表中可以繪制的序列也是不受限制的(與計算機內存有關),同一個圖表中的每個序列的類型可以不同,不同序列的坐標刻度和類型也可以不同利用圖表的 Serieslist[i]、Series[i]和Chart[i]屬性可以列出圖表中包含的序列。
標題和腳注( TChart title)。圖表的標題(Title)與腳注(Foot)是一個 TChartitle對象,如圖1中標示的 Title、 SubTitle、Foot和 SubFoot區域,這些對象的顏色、位置、字體等都是可以改變的
圖例( TChartLegend)。是圖表中的一個矩形區域,用于對圖表中的序列進行說明,圖例中顯示內容、方式、外觀等參數都可以改變,還可設定某一個序列不在圖例中顯示等。
畫布( TCanvas3D)。圖表組件的畫布是一個三維畫布對象,可以繪制各種幾何形狀和輸出文字字符,為程序員在圖表上增加新的圖形內容提供了方便
墻壁(Wall)。為體現圖表的三維效果,圖表組件提供了左面墻( LeftWall:Chart Wall)地面( Bottom wall)、后墻( Back Wall:TChart Back Wal)和右面墻( TChartRight Wall)共四個方向的墻壁以增加二維效果,墻的顏色、厚度、透明程度都是可定義的
工具( Tools)。與圖表組件起還有27個工具對象,可以對序列、坐標軸以及其他對象進行控制和操作。當打開圖表編輯器選擇Tools頁面單擊Add按鈕后就可在工具庫中選擇需要使用的工具。
圖表元素之間的關聯
TChart關聯的對象。與 TChart關聯的對象有序列( TChartSeries)、坐標軸( TChartAxes)、墻( TChart Wall)、圖例( TChartlegend)和標題等。除畫布對象TCanvas3D外,其他幾個對象與TChart的關聯是由其具有的 Parentchart屬性確定的,其關系示意如圖4所示。
圖4
序列TChartSeries與坐標軸TChartAxis的關聯。序列對象的兩個枚舉類型屬性TChartTitle Thorizaxis和 TVertAxis指出序列在水平和垂直方向所關聯的坐標軸在圖表中的位置,從而使得序列通過這兩個屬性與坐標軸建立關聯后也就建立了與 TChart的間接關聯。也就是說,通過這個屬性可以訪問序列所在的坐標軸。屬性THorizAxis和 TVertAxis的定義為:
THorizAxis=(aTopAxis,aBottomAxis,aBothHorizAxis,acustomHorizAxis);
TVertAxis=(aLeftAxis,aRightAxis,aBothVertAxis,aCustomvertAxis);
誠然,也可以通過坐標軸獲取與坐標軸所關聯的序列。TChart中的 GetAxisSeries(Axis:TChartAxis): TChartSeries方法就可以獲得與坐標軸關聯的序列。
圖表組件的主要屬性
外觀控制。圖表組件的外觀控制包括邊框( Border)、邊緣( Chart bounds,由Left、Iop、Width、Height表示)、邊距( MarginLeft、Margin Right、MarginTop、MarginBottom)圖表區( ChartRect)、背景等(可參照圖1)。
縮放與滾動控制。屬性 AllowZoom確定是否隨鼠標右鍵拖動而縮放, AnimatedZoom設定縮放過程是否具有動感效果,而 AnimatedZoomSteps是設定分幾步可達到最后的縮放效果;屬性 AllowPanning用于設定是否允許在水平或垂直方向上滾動,另外 TChart的Tools還提供了有關滾動控制的工具,如坐標箭頭工具TAxisArrowTool。和坐標滾動工具 TAxisScrollTool都可以進行滾動控制。
頁面控制。圖表組件可以設定每頁的最大點數 MaxPointsPerPage和最后一頁的顯示方式屬性ScaleLastPage使圖表可多頁顯示,組件群中的 TChartScrollBar與TChartPageNavigator 組件就是用于控制多頁顯示的。
輸出控制。圖表組件的輸出包括打印和導出兩種形式,打印是直接送往打印機,可以設置打印邊距( Chart1.PrintMargins、 Printer.PageWidth/PageHeight)、打印分辨率( Printer.Resolution)、打印方向( Printer.Orientation)等,而且TeeChart組件群中還提供了單頁面多圖表打印的組件,使圖表打印更方便。另外圖表組件還提伏Export導出頁面用于輸為指定格式文件,并且還有一些方法支持輸出控制
圖表組件的方法
TChart提供了許多方法用于圖表組件的操作,如序列的增加( AddSeries)、刪除
( RemoveSeries、RemoveAllSeries)、數據源設定及檢查刷新( DataSource, CheckDataSource)、縮放( ZoomPercent),打印圖表( Print、PrintPartial)和文件操作( SaveToBitmapFile、SaveToMetafile)等。
圖表組件的事件
Tchart不但具備一般可視組件具有的事件,并且提供了具有自己特點的時間,如在序列單擊OnClickSeries和雙擊OnDblClick、在圖表組件上單擊OnClick,這些均會在后續章節中介紹,希望感興趣的朋友可以持續關注本教程。
相關資料推薦:
下一章:創建圖表的一般步驟
上一章:Teechart的安裝
現TeeChart for .NET,TeeChart for JavaScript/HTML5,TeeChart for Xamarin.Android等均已加入在線訂購,現在搶購可立享優惠!
關注慧聚IT微信公眾號???,了解產品的最新動態及最新資訊。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: