轉帖|使用教程|編輯:況魚杰|2020-03-12 14:03:44.590|閱讀 620 次
概述:本教程轉自屈景輝的Teechart應用技術詳解——快速圖表制作工具一書。接下來將會介紹第九章——Teechart在工程中的應用。本文將會介紹功能要求與實現代碼中的文本數據的讀入這一節。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Steema公司和慧都科技針對中國市場聯合推出中文版TeeChart for .NET圖表控件,一共漢化2000個詞條(17000個單詞),漢化文檔35000個單詞,包括控件設計時與運行時的界面漢化以及控件使用向導文檔的漢化,總漢化90%以上!
TeeChart for .NET中文版讓您在使用和學習上沒有任何語言障礙,至少可以節省30%的開發時間。TeeChart for .NET中文版具有易上手,使用方便,穩定性好,性價比高,價格優惠等優勢,并且針對Web應用提供無限制服務器分發授權方式,非常有利于產品集成。
這一章將以工程中的應用實例作為對TeeChart圖表組件實際應用的一個總結,一方面展現TeeChart組件的強大功能以及方便的人性化設計,另一方面通過一個應用實例為使用者介紹TeeChart組件在工程中的應用技術或技巧。
文本數據的讀入
本系統待處理數據是符合自定義格式后綴為wf的純文本文件,可使用 Windows記事本程序 notepad.exe打開瀏覽,其格式如下圖所示。
該文本文件前71行為注釋性語句,第72行的第1列是序號,第2~5列分別是D1、D2、D3和D4這4條曲線的數據,列間用空格隔開。
將文本文件數據賦予4條曲線可以通過4種方法實現(先使用圖表編輯器加入四條序列)。
方法一
選擇圖10-4中的Fields選項卡,指定序列(曲線)對應的Text、X、Y在文本文件中的列號以及列與列之間的分隔符(此文件列與列分隔為一個空格符)和從文本文件多少行以后開始是數據行(本例為71行后),如下圖所示。
當修改了某些參數后, Apply按鈕可用,這時單擊該按鈕則讀入文本文件中的數據。到此為止,已經為 Series1設定了文本數據源,重復上述方法可完成對 Series2、 Series3和 Series4的文本源設置(分別對應曲線D1、D2、D3和D4)。
方法二:
因為有4條曲線(D1、D2、D3和D4是曲線的標題, Series1~ Series4是曲線名稱),所以從 Delphi7 IDE的 TeeChart組件板上向窗體中拖入4個文本數據源組件(或在 Series選項卡的數據源處選擇 Text File),選中任一文本數據源組件會打開 Object Inspector窗口,如下圖所示。
在上圖中,設SeriesTextSource1的Series屬性為Series1,HeaderLine為71,FileName為c:\S5-12(2970).wfl.FieldSeparator屬性為空格(空格個數由實際個數確定,注意“空格”和“空“是不同的),然后雙擊屬性Fields彈出Edittng SeriesTextSource1.Fields窗口,如下圖所示,單擊AddNew(Ins)按鈕,出現0-TSeriesTextField項,然后在Object Inspector窗口設置FieldIndex和FieldName屬性,并重復這個過程,完成對Series1的文本數據源設定,結果如下面第二圖所示,最后返回到上圖的狀態,選擇Active屬性為True,這時文本文件的數據就讀入序列中,按照此法設置其他幾個序列的數據源就可以了,這個過程可以看出效果與方法一第二圖相同。
方法三:
當窗體中已有文本數據源組件時,可直接雙擊該組件,打開 Series DataSource Text Editor窗口,進行文本文件名和序列屬性與文木文件數據的對應關系的設定,其過程也與方法二中的圖相同,效果如下圖所示(注意:設定完成后要單擊Load按鈕載入數據)。
采用編寫代碼的方法也可以進行文本數據源的設定。如果序列(曲線)數據在系統啟動后只載入一次的話,可將下列代碼放在窗體的 OnCreate事件中:如果序列的數據源在程序運行過程中是不斷改變的,則需將代碼放在某個按鈕的OnClick事件或其他事件中觸發。下面的代碼放在按鈕的OnClick事件中。
procedure TForm1. BitBtn1Click(Sender: TObject); begin SeriesTextSource1.HeaderLines:=71; SeriesTextSource1.FieldSeparator:=' '; SeriesTextSource1.FileName:='c: \s5-12(2970).wfl'; SeriesTextSource1.Series:=Series1; SeriesTextSource1.Fields[0].FieldIndex:=1;//對應文本文件的列 SeriesTextSource1.Fields[0]. FieldName:='Text'; SeriesTextSource1.Fields[1]. FieldIndex:=1; SeriesTextSource1.Fields[1]. FieldName:='X'; SeriesTextSource1.Fields[2]. FieldIndex:=2; SeriesTextSource1.Fields[2]. FieldName:='Y'; SeriesTextSource1.Active:=TRUE; Chart1.Refresh; end;
相關資料推薦:
上一章:Teechart在工程中的應用
下一章:曲線概貌與細節
=====================================
現TeeChart for .NET,TeeChart for JavaScript/HTML5,TeeChart for Xamarin.Android等均已加入在線訂購,現在搶購可立享優惠!
關注慧聚IT微信公眾號???,了解產品的最新動態及最新資訊。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: