home *** CD-ROM | disk | FTP | other *** search
/ Delphi 5 for Professionals / DELPHI5.iso / AddOns / Components / TEECHART / Delphi1_And_Delphi2 / EXAMPLES / EXTENDED / UEXPPIE.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1998-10-24  |  2.4 KB  |  95 lines

  1. {*********************************************}
  2. { TeeChart Delphi Component Library           }
  3. { Exploding Pie Slices Demo                   }
  4. { Copyright (c) 1995-1998 by David Berneda    }
  5. { All rights reserved                         }
  6. {*********************************************}
  7. unit UExpPie;
  8.  
  9. interface
  10.  
  11. uses
  12.   WinProcs,WinTypes, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  13.   StdCtrls, ExtCtrls, TeEngine, Series, TeeProcs, Chart, TeeComma;
  14.  
  15. type
  16.   TExplodedPieForm = class(TForm)
  17.     Panel1: TPanel;
  18.     Memo1: TMemo;
  19.     Button1: TButton;
  20.     CheckBox1: TCheckBox;
  21.     Label1: TLabel;
  22.     ScrollBar1: TScrollBar;
  23.     TeeCommander1: TTeeCommander;
  24.     Chart1: TChart;
  25.     Series1: TPieSeries;
  26.     Button2: TButton;
  27.     CheckBox2: TCheckBox;
  28.     Timer1: TTimer;
  29.     procedure Button1Click(Sender: TObject);
  30.     procedure CheckBox1Click(Sender: TObject);
  31.     procedure ScrollBar1Change(Sender: TObject);
  32.     procedure Button2Click(Sender: TObject);
  33.     procedure FormCreate(Sender: TObject);
  34.     procedure Timer1Timer(Sender: TObject);
  35.     procedure CheckBox2Click(Sender: TObject);
  36.   private
  37.     { Private declarations }
  38.   public
  39.     { Public declarations }
  40.   end;
  41.  
  42. implementation
  43.  
  44. {$R *.DFM}
  45.  
  46. procedure TExplodedPieForm.Button1Click(Sender: TObject);
  47. begin
  48.   Close;
  49. end;
  50.  
  51. procedure TExplodedPieForm.CheckBox1Click(Sender: TObject);
  52. begin
  53.   Chart1.View3D:=CheckBox1.Checked;
  54. end;
  55.  
  56. procedure TExplodedPieForm.ScrollBar1Change(Sender: TObject);
  57. begin
  58.   { set the exploding of the biggest pie slice }
  59.   Series1.ExplodeBiggest:=ScrollBar1.Position;
  60. end;
  61.  
  62. procedure TExplodedPieForm.Button2Click(Sender: TObject);
  63. var t:Integer;
  64. begin
  65.   { reset all slices to exploding zero }
  66.   for t:=0 to Series1.Count-1 do Series1.ExplodedSlice.Value[t]:=0;
  67.   
  68.   { un-explode the biggest slice too... }
  69.   Series1.ExplodeBiggest:=0;
  70.  
  71.   ScrollBar1.Position:=0;
  72. end;
  73.  
  74. procedure TExplodedPieForm.FormCreate(Sender: TObject);
  75. var t:Integer;
  76. begin
  77.   Series1.FillSampleValues(8);
  78.  
  79.   { Explode all Pie slices }
  80.   for t:=0 to Series1.Count-1 do
  81.       Series1.ExplodedSlice.Value[t]:=10*t;
  82. end;
  83.  
  84. procedure TExplodedPieForm.Timer1Timer(Sender: TObject);
  85. begin
  86.   Series1.RotationAngle:=Series1.RotationAngle+5;
  87. end;
  88.  
  89. procedure TExplodedPieForm.CheckBox2Click(Sender: TObject);
  90. begin
  91.   Timer1.Enabled:=CheckBox2.Checked;
  92. end;
  93.  
  94. end.
  95.