Marco Web Center |
Home: Code Repository: Mastering Delphi 5Project GRAPH1
Project StructureGRAPH1.DPRprogram Graph1; uses Forms, GraphF in 'GraphF.pas' {Form1}; {$R *.RES} begin Application.CreateForm(TForm1, Form1); Application.Run; end. GRAPHF.PASunit GraphF; interface uses SysUtils, Windows, Messages, Classes, Graphics, Controls, Forms, Dialogs, Grids, StdCtrls, TeEngine, Series, ExtCtrls, TeeProcs, Chart; type TForm1 = class(TForm) Chart1: TChart; Series1: TBarSeries; Series2: TBarSeries; Series3: TBarSeries; Series4: TBarSeries; Panel1: TPanel; ChBoxMarks: TCheckBox; UpdateButton: TButton; StringGrid1: TStringGrid; procedure FormCreate(Sender: TObject); procedure UpdateButtonClick(Sender: TObject); procedure StringGrid1GetEditMask(Sender: TObject; ACol, ARow: Longint; var Value: string); procedure ChBoxMarksClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.FormCreate(Sender: TObject); var I, J: Integer; begin with StringGrid1 do begin {fills the fixed column and row, and the chart series names} for I := 1 to 5 do Cells [I, 0] := Format ('Group%d', [I]); for J := 1 to 4 do begin Cells [0, J] := Format ('Series%d', [J]); Chart1.Series [J-1].Title := Format ('Series%d', [J]); end; // fills the grid with random values Randomize; for I := 1 to 5 do for J := 1 to 4 do Cells [I, J] := IntToStr (Random (100)); end; // with // update the chart UpdateButtonClick (Self); end; procedure TForm1.UpdateButtonClick(Sender: TObject); var I, J: Integer; begin for I := 1 to 4 do begin Chart1.Series [I-1].Clear; for J := 1 to 5 do Chart1.Series [I-1].Add ( StrToInt (StringGrid1.Cells [J, I]), '', Chart1.Series [I-1].SeriesColor); end; end; procedure TForm1.StringGrid1GetEditMask(Sender: TObject; ACol, ARow: Longint; var Value: string); begin // edit mask for the grid cells Value := '09;0'; end; procedure TForm1.ChBoxMarksClick(Sender: TObject); var I: Integer; begin for I := 1 to 4 do Chart1.Series [I-1].Marks.Visible := ChBoxMarks.Checked; end; end. GRAPHF.DFMobject Form1: TForm1 Left = 188 Top = 82 Width = 485 Height = 462 Caption = 'Graph' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clBlack Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] OldCreateOrder = True OnCreate = FormCreate PixelsPerInch = 96 TextHeight = 13 object Chart1: TChart Left = 0 Top = 0 Width = 477 Height = 291 AnimatedZoom = True BackWall.Brush.Color = clWhite BackWall.Brush.Style = bsClear BackWall.Color = clBtnFace Title.Text.Strings = ( 'Simple TeeChart Demo for Mastering Delphi') BackColor = clBtnFace Align = alClient BevelOuter = bvLowered TabOrder = 0 object Series1: TBarSeries Marks.ArrowLength = 20 Marks.Visible = False SeriesColor = clRed XValues.DateTime = False XValues.Name = 'X' XValues.Multiplier = 1 XValues.Order = loAscending YValues.DateTime = False YValues.Name = 'Bar' YValues.Multiplier = 1 YValues.Order = loNone end object Series2: TBarSeries Marks.ArrowLength = 20 Marks.Visible = False SeriesColor = clGreen XValues.DateTime = False XValues.Name = 'X' XValues.Multiplier = 1 XValues.Order = loAscending YValues.DateTime = False YValues.Name = 'Bar' YValues.Multiplier = 1 YValues.Order = loNone end object Series3: TBarSeries Marks.ArrowLength = 20 Marks.Visible = False SeriesColor = clYellow XValues.DateTime = False XValues.Name = 'X' XValues.Multiplier = 1 XValues.Order = loAscending YValues.DateTime = False YValues.Name = 'Bar' YValues.Multiplier = 1 YValues.Order = loNone end object Series4: TBarSeries Marks.ArrowLength = 20 Marks.Visible = False SeriesColor = clBlue XValues.DateTime = False XValues.Name = 'X' XValues.Multiplier = 1 XValues.Order = loAscending YValues.DateTime = False YValues.Name = 'Bar' YValues.Multiplier = 1 YValues.Order = loNone end end object Panel1: TPanel Left = 0 Top = 291 Width = 477 Height = 144 Align = alBottom BevelOuter = bvLowered TabOrder = 1 object ChBoxMarks: TCheckBox Left = 352 Top = 82 Width = 57 Height = 17 Caption = 'Marks' TabOrder = 0 OnClick = ChBoxMarksClick end object UpdateButton: TButton Left = 336 Top = 37 Width = 89 Height = 30 Caption = '&Update' TabOrder = 1 OnClick = UpdateButtonClick end object StringGrid1: TStringGrid Left = 8 Top = 8 Width = 309 Height = 128 ColCount = 6 DefaultColWidth = 50 Options = [goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goEditing] ScrollBars = ssNone TabOrder = 2 OnGetEditMask = StringGrid1GetEditMask end end end
|
||
© Copyright Marco Cantù, 1995-2020, All rights reserved |