lazarus/components/tachart/demo/extent/main.pas
2010-04-16 06:28:05 +00:00

71 lines
1.4 KiB
ObjectPascal

unit main;
{$mode objfpc}{$H+}
interface
uses
ExtCtrls, Spin, StdCtrls, Forms, TAGraph, TASeries, TASources;
type
{ TForm1 }
TForm1 = class(TForm)
cgUseBounds: TCheckGroup;
Chart1: TChart;
clRight: TConstantLine;
clLeft: TConstantLine;
clTop: TConstantLine;
clBottom: TConstantLine;
Chart1LineSeries: TLineSeries;
fseBounds: TFloatSpinEdit;
lblBoundValue: TLabel;
Panel1: TPanel;
RandomChartSource1: TRandomChartSource;
procedure cgUseBoundsItemClick(Sender: TObject; Index: integer);
procedure FormCreate(Sender: TObject);
procedure fseBoundsChange(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.cgUseBoundsItemClick(Sender: TObject; Index: integer);
begin
with Chart1.Extent do begin
UseXMin := cgUseBounds.Checked[0];
UseXMax := cgUseBounds.Checked[1];
UseYMin := cgUseBounds.Checked[2];
UseYMax := cgUseBounds.Checked[3];
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
fseBoundsChange(nil);
end;
procedure TForm1.fseBoundsChange(Sender: TObject);
begin
clRight.Position := fseBounds.Value;
clLeft.Position := -fseBounds.Value;
clTop.Position := fseBounds.Value;
clBottom.Position := -fseBounds.Value;
with Chart1.Extent do begin
XMin := -fseBounds.Value;
XMax := fseBounds.Value;
YMin := -fseBounds.Value;
YMax := fseBounds.Value;
end;
end;
end.