轉帖|使用教程|編輯:況魚杰|2019-12-16 16:18:02.453|閱讀 383 次
概述:本教程轉自屈景輝的Teechart應用技術詳解——快速圖表制作工具一書。本文將會介紹第五章——TeeChart的實時監控與地圖顯示,其中如何使用極值控制實現實時監控。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Steema公司和慧都科技針對中國市場聯合推出中文版TeeChart for .NET圖表控件,一共漢化2000個詞條(17000個單詞),漢化文檔35000個單詞,包括控件設計時與運行時的界面漢化以及控件使用向導文檔的漢化,總漢化90%以上!
TeeChart for .NET中文版讓您在使用和學習上沒有任何語言障礙,至少可以節省30%的開發時間。TeeChart for .NET中文版具有易上手,使用方便,穩定性好,性價比高,價格優惠等優勢,并且針對Web應用提供無限制服務器分發授權方式,非常有利于產品集成。
TChart的坐標軸提供了Automatic、Maximum和Minimu幾個屬性可以設定自動計算方式以及獲得或設定某坐標軸的最大值和最小值。如果能夠動態地改變在圖表窗口中X軸顯示的范圍,則隨著時間的推移和最大值最小值的改變,圖表窗口顯示的數據便呈現滾動狀態。
代碼設計
首先,在程序運行的初始狀態,對圖表的X軸設定如下:
Chart1.BottomAxis.Automatic:=False; Chart1.BottomAxis.Maximum:=100;//設定最大值 Chart1.BottomAxis.Minimum:=0;
這段代碼說明,圖表的X軸最多可以顯示100個點。那么,可以在產生數據的地方,實時修改X軸的最小值和最大值,始終保持圖表窗口只能顯示100個點,代碼如下:
Inc(Number); Series1.Add(random(100)); if Number >100 then begin Chart1.BottomAxis Maximum:=Number; Chart1.BottomAxis Minimum:=Number-100; end;
這樣,就保證窗口中的點數是固定的,那么,極值的變化也就產生了滾動的效果
應用舉例
建立一個新工程,并按下表設置組件屬性,設計階段的界面如下圖所示。窗體中增加的SpinEdit1組件可以隨時改變顯示窗口內的數據點數,或者說數據點的稀疏狀態。
使用極值控制實現實時監控舉例組件屬性設置
組件名 | 屬性 | 設置 | 說明 |
TChart | Name | Chart1 | 圖表組件 |
TLineSeries | Name | Series1 | 圖表中的序列 |
TSpinEdit | Name | SpinEdit1 | 用于設定顯示窗口的范圍 |
Value | 100 | 初始設定值 | |
TTimer | Name | Timer1 | 定時器 |
Interval | 1000 | ||
Checked | False |
事件代碼。在窗體OnCreate事件中對X軸進行初始設定,加入下列代碼:
procedure TForm1. FormCreate(Sender:TObject); begin Chart1.BottomAxis.Automatic:=False; Chart1.BottomAxis.Maximum:=SpinEdit1.Value;//X軸設定值可隨時改變 Chart1.BottomAxis.Minimum:=0; Chart1.LeftAxis.Automatic:=False;//Y軸最大值范圍設定 Chart1.LeftAxis.Maximum:=100.0;
然后,在模擬實時狀態的定時器的On Timer事件中加入下列代碼:
procedure TForm1.Timer1Timer(Sender:TObject); begin Inc(Number); Series1.Add (random(100)); if Number>SpinEdit1.Value then begin Chart1.BottomAxis.Maximum:=Number; Chart1.BottomAxis.Minimum:=Number- SpinEdit1.Value; end; end;
運行示例。該工程運行后的界面如下圖所示:
相關資料推薦:
=====================================
現TeeChart for .NET,TeeChart for JavaScript/HTML5,TeeChart for Xamarin.Android等均已加入在線訂購,現在搶購可立享優惠!
關注慧聚IT微信公眾號???,了解產品的最新動態及最新資訊。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: