Professional Documents
Culture Documents
Huong Dan Ve Do Thi Voi VC# PDF
Huong Dan Ve Do Thi Voi VC# PDF
HNG DN V TH VI
VISUAL STUDIO C# 2008
Hm nay, ngy 05/08/2011 ng l 1 ngy bun nh ch cht ( con ch nh bn cnh
b nu d cy ^_^ ), li ngi vit TUT cho anh em engineer mi vo ngh.
1. Gii thiu
Trong TUT u ti hng dn cc bn giao tip COM vi vi iu khin. Giao
tip nh vy coi nh l xong ri. Nhng m chng ta thy y nhn c d liu
tt ri nhng phi v c Graph th mi gii quyt c bi ton.
Trong 1 ln tnh c thy 1 ng anh v th vi VB6 nhn thy m thm c ngh
ng ny tht l P-r-fc-sn-n. Nhng sau khi tm hiu th ha ra ng ta si
phn mm v teachar g ( hic khng nh! ). Ti mi mon men ln mng tm
cho C# th c cng kh nhiu cng c mnh m cho v th, nhn rt chuyn
nghip c nh l dng Excel v y. K n l c ZedGraph, Component one
Trong khun kh ti liu ny ti s c gng hng dn chi tit v th vi
ZedGraph, tuy khng p v pro bng Component One nhng l cng c mnh v
code nn rt d lm ch code ca mnh.
Hi vng ti liu s gip ch c anh em mi vo ngh chi vi iu khin v tp
code vi C#
2. To Project
1
Ng ng Hin Hc Vin Hi Qun 2011
3
Ng ng Hin Hc Vin Hi Qun 2011
Em n y, ch
vic ko th vo
Form l OK
4
Ng ng Hin Hc Vin Hi Qun 2011
Timer th hin y l c.
3. Vit CODE
- Trc ht thm th vin vo
// ch : Khai bo th vin ny
using ZedGraph;
int tickStart = 0;
public Form1()
{
InitializeComponent();
}
5
Ng ng Hin Hc Vin Hi Qun 2011
// y s dng list vi 1200 im (c th thm nhiu liu ti
y)
RollingPointPairList list2 = new RollingPointPairList( 1200 );
// dng di l nh ngha curve v.
LineItem curve1 = myPane.AddCurve("ng 1", list1, Color.Red,
SymbolType.None); // Color mu , c trng cho ng 1
// SymbolType l kiu biu th th : im, ng trn, tam
gic ....
LineItem curve2 = myPane.AddCurve("ng 2", list2, Color.Blue,
SymbolType.None); // Color mu Xanh, c trng cho ng 2
// Gi hm xc nh c trc
zedGraphControl1.AxisChange();
// tin cho vic s dng chng ta s xy dng 1 hm draw phc v cho vic
v th
if (zedGraphControl1.GraphPane.CurveList.Count <= 0)
return;
// Kim tra vic khi to cc ng curve
// a v im xut pht
LineItem curve1 = zedGraphControl1.GraphPane.CurveList[0] as
LineItem;
LineItem curve2 = zedGraphControl1.GraphPane.CurveList[1] as
LineItem;
if (curve1 == null)
return;
if (curve2 == null)
return;
6
Ng ng Hin Hc Vin Hi Qun 2011
if (list1 == null)
return;
if (list2 == null)
return;
// V th
zedGraphControl1.AxisChange();
// Force a redraw
zedGraphControl1.Invalidate();
}
7
Ng ng Hin Hc Vin Hi Qun 2011
8
Ng ng Hin Hc Vin Hi Qun 2011
// ch : Khai bo th vin ny
using ZedGraph;
namespace DOTHI_HIENCLUBVN
{
public partial class Form1 : Form
{
// Khai bo 1 bin dng cho timer, chy ct thi gian tnh bng ms
int tickStart = 0;
public Form1()
{
InitializeComponent();
}
// Gi hm xc nh c trc
zedGraphControl1.AxisChange();
9
Ng ng Hin Hc Vin Hi Qun 2011
// tin cho vic s dng chng ta s xy dng 1 hm draw phc v
cho vic v th
public void draw(double setpoint1, double setpoint2) // v d ny
chng ta c 2 ng
{
if (zedGraphControl1.GraphPane.CurveList.Count <= 0)
return;
// Kim tra vic khi to cc ng curve
// a v im xut pht
LineItem curve1 = zedGraphControl1.GraphPane.CurveList[0] as LineItem;
LineItem curve2 = zedGraphControl1.GraphPane.CurveList[1] as LineItem;
if (curve1 == null)
return;
if (curve2 == null)
return;
if (list1 == null)
return;
if (list2 == null)
return;
10
Ng ng Hin Hc Vin Hi Qun 2011
xScale.Max = time + xScale.MajorStep;
xScale.Min = 0;
}
}
// V th
zedGraphControl1.AxisChange();
// Force a redraw
zedGraphControl1.Invalidate();
}
11
Ng ng Hin Hc Vin Hi Qun 2011
Hnh trn l thi gian chy ( th dch tnh tin), hnh bn di bt u t 0 (dn li)
12