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

📄 unthumsearch.~pas

📁 显示当前采集的10个测量点的路温湿度值: 温度单位是℃
💻 ~PAS
字号:
unit untHumSearch;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, ComCtrls, Grids, DBGrids, TeEngine, Series,
  TeeProcs, Chart, DbChart, DB, ADODB;

type
  TfrmSdSearch = class(TForm)
    Label1: TLabel;
    btnSearchQuit: TButton;
    StaticText4: TStaticText;
    dttmrSearchDateBegin: TDateTimePicker;
    dttmrSearchTimeBegin: TDateTimePicker;
    dttmrSearchDateEnd: TDateTimePicker;
    dttmrSearchTimeEnd: TDateTimePicker;
    btnSearchYes: TButton;
    btnseachprint: TButton;
    Notebook1: TNotebook;
    Label14: TLabel;
    ComboBox1: TComboBox;
    CheckBox1: TCheckBox;
    dbchrtTemp: TDBChart;
    Series1: TLineSeries;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    ADOQueryHum: TADOQuery;
    procedure btnSearchQuitClick(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure btnSearchYesClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmSdSearch: TfrmSdSearch;
  humTblSearchFlag : Byte;
implementation
uses
   untDMmain;

{$R *.dfm}

procedure TfrmSdSearch.btnSearchQuitClick(Sender: TObject);
begin
   close;
end;

procedure TfrmSdSearch.CheckBox1Click(Sender: TObject);
Var
  strbegin,strend :String;
  i,j: Integer;
begin
   if CheckBox1.Checked then
      begin
      // 被选中 ,显示曲线
      NoteBook1.ActivePage := NoteBook1.Pages[0];
      with dbchrtTemp do
        begin
          strbegin:=datetostr(dttmrSearchDateBegin.Date)+' '+timetostr(dttmrSearchTimeBegin.Time);
          strend:=datetostr(dttmrSearchDateEnd.Date)+' '+timetostr(dttmrSearchTimeEnd.Time);
          bottomAxis.SetMinMax(strtodatetime(strbegin),strtodatetime(strend));
      if humTblSearchFlag = 1 then
      begin
      // 已经进行过表格查询
         With series1 do
         begin
           for i :=0 to ADOQueryHum.RecordCount-1 do
             begin
               //显示数据
               AddXY(ADOQueryHum.Fields[0].Value,ADOQueryHum.Fields[1].Value,'',clGreen);
               ADOQueryHum.next;
             end;
         end;
       end;
        AddSeries(Series1);
      end;
      end
   else
      // 未被选中 ,显示表
      NoteBook1.ActivePage := NoteBook1.Pages[1];

end;

procedure TfrmSdSearch.FormCreate(Sender: TObject);
begin
   // 初始化
   dttmrSearchDateBegin.Date := Date;
   dttmrSearchTimeBegin.Time := Time;
   dttmrSearchDateEnd.Date := Date;
   dttmrSearchTimeEnd.Time := Time;
   ComboBox1.ItemIndex :=0; // 选中第1点
  // NoteBook1.ActivePage := NoteBook1.Pages[1];
     // 温度曲线设置
  With dbchrtTemp do
    AnimatedZoom:=True;
  begin
    With Series1 do
    begin
    // set series1
      Xvalues.DateTime := true;
    end;
  end;
end;

procedure TfrmSdSearch.btnSearchYesClick(Sender: TObject);
var
  SearchDateBegin,SearchTimeBegin,SearchDateEnd,SearchTimeEnd:Tdatetime;
  rightFlag : byte; // 正确标志
begin
  dttmrSearchDateBegin.Time :=0;
  SearchDateBegin:=dttmrSearchDateBegin.date;
  SearchTimeBegin:=dttmrSearchTimeBegin.Time;
  dttmrSearchDateEnd.Time :=0;
  SearchDateEnd:=dttmrSearchDateEnd.date;
  SearchTimeEnd:=dttmrSearchTimeEnd.Time;
  rightFlag := 1;
  if SearchDateBegin>SearchDateEnd then
    begin
      showmessage('查询日期有错');
      rightFlag := 0;
    end;
  if (SearchDateBegin=SearchDateEnd) and (SearchTimeBegin>SearchTimeEnd) then
    begin
    showmessage('查询时间有错');
    rightFlag := 0;
    end;
   if rightFlag = 1 then
      begin
    // 输入正确的情况下,查询
     with ADOQueryHum do
     begin
      sql.Clear;
      sql.Add('select saveTime as 时间, ');
      sql.Add( 'hum'+inttoStr(ComboBox1.ItemIndex + 1));
      sql.Add(' as 湿度 from tblRunData');
      sql.Add('where saveTime >= :BeginTime and saveTime <= :EndTime');
      Parameters[0].Value := datetostr(SearchDateBegin)+' '+timetostr(SearchTimeBegin);
      Parameters[1].Value := datetostr(SearchDateEnd)+' '+timetostr(SearchTimeEnd);
      Open;
    end;
    humTblSearchFlag := 1;
    DBGrid1.Visible := True;
   end;
end;

end.

⌨️ 快捷键说明

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