原創|使用教程|編輯:龔雪|2014-02-18 09:30:25.000|閱讀 291 次
概述:大多數開發人員在使用TeeChart進行開發的時候,都需要訪問包含在文本文檔中的一些數據,本次教程將詳細講解如何去實現這一步驟。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
大多數開發人員在使用TeeChart進行開發的時候,都需要訪問包含在文本文檔中的一些數據,本次教程將詳細講解如何去實現這一步驟。
文本文件通常包含使用空格鍵或者是TAB鍵分隔開的數字和文字:
比如下面的文本,包含兩個字段,使用空格作為字段分隔:
0.1 24
0.5 143
0.2 321
0.1 100
從一個文本文件讀取數據(如果列分隔符是正確的),開發者可以使用TSeriesTextSource組件,可以根據自身的數據設置ileName、Fields和FieldSeparator屬性。然后只需通過設置TSeriesTextSource.Series或Series.DataSource屬性將系列文本源組件連接到一個圖表系列。
1 創建一個新的應用程序。 (File->New->Application)
2 從"Additional"面板選項卡中拖放TChart組件。
3 雙擊Chart1組件顯示TeeChart編輯對話框。(或右鍵單擊Chart1并單擊"Edit...")
4 單擊"Add..." 按鈕,選擇"Line"系列風格,單擊OK按鈕。(或雙擊"Line"圖表)
5 關閉編輯器對話框(或按Esc鍵關閉它)。
6 找到“TeeChart”組件面板選項卡并拖放SeriesTextSource組件。
7 雙擊SeriesTextSource1組件顯示編輯器對話框,填寫以下屬性:
VCL代碼:
unit UImportData; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, TeEngine, Series, TeeURL, TeeSeriesTextEd, ExtCtrls, TeeProcs, Chart, StdCtrls, Buttons; type TForm1 = class(TForm) Chart1: TChart; Series1: TLineSeries; SeriesTextSource1: TSeriesTextSource; Panel1: TPanel; BitBtn1: TBitBtn; procedure BitBtn1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.BitBtn1Click(Sender: TObject); begin with SeriesTextSource1 do begin // Setup fields (columns in text file) Fields.Clear; AddField('X',1); AddField('Y',2); // Set separators FieldSeparator := ' '; DecimalSeparator := '.'; // Set file name containing text data FileName := 'test.dat'; // Series to add data Series := Series1; // Load data from file into Series Active := True; end; // Example of setting axes scales. // Not necessary is axes already have Automatic:=True. Series1.GetVertAxis.SetMinMax(0,1); Series1.GetHorizAxis.SetMinMax(3864.90,3865.50); end; end. Displaying the SeriesTextSource editor dialog If you wish to show the SeriesTextSource editor dialog at runtime, simply drop a button and type this code at Button1Click event: procedure TForm1.Button1Click(Sender: TObject); begin // This procedure is located at TeeSeriesTextEd.pas unit: TeeEditSeriesTextSource(SeriesTextSource1); end;
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網