⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit12.pas

📁 西门子与计算机通讯程序包括源代码 程序说明 可以进行时时数据采集记录
💻 PAS
字号:
unit Unit12;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, TeeProcs, TeEngine, Chart, DBChart, StdCtrls, Series,
  DB, ADODB, TeeTools, TeePageNumTool, Buttons, TeeLisB;

type
  TForm12 = class(TForm)
    DBChart1: TDBChart;
    Panel1: TPanel;
    Panel2: TPanel;
    GroupBox1: TGroupBox;
    ADOConnection1: TADOConnection;
    ADOTable1: TADOTable;
    ADOTable2: TADOTable;
    Panel3: TPanel;
    Panel4: TPanel;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    SpeedButton1: TSpeedButton;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    CheckBox1: TCheckBox;
    procedure FormCreate(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
    cb:array[0..25] of Tcheckbox;
        oldcolor:tcolor;
   lineseries:array[0..25]of TLineSeries   ;
    procedure xxxClick(Sender: TObject); 

  public
    { Public declarations }
  end;

var
  Form12: TForm12;

implementation

uses main;

{$R *.dfm}

procedure TForm12.FormCreate(Sender: TObject);
var  
j:integer;


begin
  

  oldcolor:=clBtnFace;
      ADOConnection1.LoginPrompt:=false;
      ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+databasenamelog+';Persist Security Info=False '  ;
      ADOConnection1.Open;
  
      ADOTable1.Active:=true;
      ADOTable1.TableName:='db';
      ADOTable2.Active:=true;
      ADOTable2.TableName:='type1';
 //统计图表显示数量
 with ADOTable2 do
                      begin
                        DisableControls;
                              try
                              j:=0;
                                First;
                                while not Eof do
                                begin
                                   databasetablearay[j]:='';
                                   databasetablearay[j]:=TrimRight (ADOTable2.Fields[0].AsString);

                                      //创建图表显示项目
                                   lineseries[j]:=TLineSeries.Create(Self);
                                      With lineseries[j] do
                                     begin
                                      ParentChart := DBChart1;
                                      DataSource := ADOTable1;
                                   //   XValues.ValueSource:=ADOTable1.FieldList[1].FieldName;
                                   //   xValues.DateTime:=true;
                                      yvalues.ValueSource:=ADOTable1.FieldList[j+2].FieldName;
                                      SeriesColor:=tcolortype1[j mod 15];
                                     end;
                                  

                                 // //显示控制选项
                                  cb[j]:=Tcheckbox.Create(self) ;
                                  cb[j].Parent := groupbox1 ;
                                  cb[j].Width := 100 ;
                                  cb[j].Height := 15 ;
                                  cb[j].Top := 15+j*14 ;
                                  cb[j].Left := 1 ;
                                  cb[j].OnClick:=xxxClick;
                                  cb[j].Caption:=format('%s',[databasetablearay[j]]);
                                  cb[j].Font.Color:=lineseries[j].SeriesColor;
                                  cb[j].Tag:=j;
                                  cb[j].Checked:=true;
                                  cb[j].Name:='bnxxx'+inttostr(j);

                                 // cb[j].;


                                 j:=j+1;
                                 Next;
                                end;
                              finally
                                EnableControls;
                              end;
                      end;

serrisnum:=j;

 groupbox1.Width :=110;
 groupbox1.Height:=10+j*14+40;

end;



procedure TForm12.xxxClick(Sender: TObject);

Begin
   if tcheckbox(sender).Checked=false then
    begin
      dbchart1.Series[ tcheckbox(sender).Tag].Active:=false;
      tcheckbox(sender).Color:=(not  tcheckbox(sender).Font.Color)and ($00ffffff);
    end
   else
   begin
      dbchart1.Series[ tcheckbox(sender).Tag].Active:=true;
      tcheckbox(sender).Color:=oldcolor;
   end

End;



procedure TForm12.Button2Click(Sender: TObject);
var
  I: Integer;
begin

for I := 0 to serrisnum - 1 do    // Iterate
begin

 
 With lineseries[i] do
               begin
                ParentChart := DBChart1;
                DataSource := ADOTable1;
                if CheckBox1.Checked then
                begin
                    XValues.ValueSource:=ADOTable1.FieldList[1].FieldName;
                    xValues.DateTime:=true;
                end else
                begin
                   lineseries[i]. XValues.ValueSource:='';
                   lineseries[i].xValues.DateTime:=false  ; 
                end;

                yvalues.ValueSource:=ADOTable1.FieldList[i+2].FieldName;
                SeriesColor:=tcolortype1[i mod 15];
             //   dbchart1.Series[i].RefreshSeries;
               end;



end;    // for 

DBChart1.Refresh;
end;

procedure TForm12.SpeedButton3Click(Sender: TObject);
begin
DBChart1.ZoomPercent(105);
end;

procedure TForm12.SpeedButton1Click(Sender: TObject);
begin
  DBChart1.ZoomPercent(95);
end;

procedure TForm12.Button1Click(Sender: TObject);
begin
form12.Close;
end;

procedure TForm12.SpeedButton2Click(Sender: TObject);
begin
   DBChart1. UndoZoom;
end;

procedure TForm12.Button3Click(Sender: TObject);
begin
DBChart1.RefreshData;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -