home *** CD-ROM | disk | FTP | other *** search
/ Delphi 5 for Professionals / DELPHI5.iso / AddOns / Components / TEECHART / DELPHI4.EXE / %MAINDIR% / Examples / Extended / Momentu.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1998-11-17  |  2.1 KB  |  86 lines

  1. {*********************************************}
  2. { TeeChart Delphi Component Library           }
  3. { Momentum Series Type Demo                   }
  4. { Copyright (c) 1995-1996 by David Berneda    }
  5. { All rights reserved                         }
  6. {*********************************************}
  7. unit Momentu;
  8.  
  9. interface
  10.  
  11. uses
  12.   SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  13.   Forms, Dialogs, Chart, Series, ExtCtrls, StatChar, StdCtrls, Curvfitt,
  14.   Spin, Teengine, Buttons,  TeeProcs;
  15.  
  16. type
  17.   TMomentumForm = class(TForm)
  18.     Chart1: TChart;
  19.     Stock: TLineSeries;
  20.     Panel1: TPanel;
  21.     CheckBox1: TCheckBox;
  22.     Timer1: TTimer;
  23.     SpinEdit1: TSpinEdit;
  24.     Label1: TLabel;
  25.     BitBtn3: TBitBtn;
  26.     BitBtn1: TBitBtn;
  27.     MomentumSeries1: TLineSeries;
  28.     TeeFunction1: TMomentumFunction;
  29.     procedure FormCreate(Sender: TObject);
  30.     procedure CheckBox1Click(Sender: TObject);
  31.     procedure Timer1Timer(Sender: TObject);
  32.     procedure SpinEdit1Change(Sender: TObject);
  33.     procedure BitBtn1Click(Sender: TObject);
  34.   private
  35.     { Private declarations }
  36.   public
  37.     { Public declarations }
  38.   end;
  39.  
  40. var
  41.   MomentumForm: TMomentumForm;
  42.  
  43. implementation
  44.  
  45. {$R *.DFM}
  46.  
  47. Uses EditChar,CustEdit; { <-- for Chart & Series Editing }
  48.  
  49. procedure TMomentumForm.FormCreate(Sender: TObject);
  50. begin
  51.   Stock.FillSampleValues(200); { <-- Some random points }
  52. end;
  53.  
  54. procedure TMomentumForm.CheckBox1Click(Sender: TObject);
  55. begin
  56.   Timer1.Enabled:=CheckBox1.Checked;
  57. end;
  58.  
  59. procedure TMomentumForm.Timer1Timer(Sender: TObject);
  60. begin
  61.   Timer1.Enabled:=False;
  62.   With Stock do
  63.   Begin
  64.     Delete(0); { <-- remove the first point }
  65.     { Add a new random point }
  66.     AddXY( XValues.Last+1,
  67.            YValues.Last+(Random(ChartSamplesMax)-(ChartSamplesMax/2)),
  68.            '',clTeeColor);
  69.     { Recalculate Momentum }
  70.     RefreshSeries;
  71.   end;
  72.   Timer1.Enabled:=True;
  73. end;
  74.  
  75. procedure TMomentumForm.SpinEdit1Change(Sender: TObject);
  76. begin
  77.   MomentumSeries1.FunctionType.Period:=SpinEdit1.Value;
  78. end;
  79.  
  80. procedure TMomentumForm.BitBtn1Click(Sender: TObject);
  81. begin
  82.   EditChart(Self,Chart1); { <-- Quite simple }
  83. end;
  84.  
  85. end.
  86.