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

📄 qzj.~pas

📁 成都研究院全直径测试仪控制软件 delphi开发
💻 ~PAS
字号:
unit qzj;

interface

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

type
  Tqzjfrm = class(TForm)
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    Label1: TLabel;
    Panel2: TPanel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Label9: TLabel;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    Label12: TLabel;
    ComboBox1: TComboBox;
    Edit13: TEdit;
    Label13: TLabel;
    Label14: TLabel;
    Edit14: TEdit;
    Timer1: TTimer;
    N8: TMenuItem;
    Label10: TLabel;
    Edit11: TEdit;
    Edit10: TEdit;
    Edit15: TEdit;
    Label15: TLabel;
    Label16: TLabel;
    ComboBox2: TComboBox;
    Label17: TLabel;
    Edit12: TEdit;
    Label18: TLabel;
    Edit16: TEdit;
    Label19: TLabel;
    Edit17: TEdit;
    N9: TMenuItem;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    Edit18: TEdit;
    Edit19: TEdit;
    BitBtn7: TBitBtn;
    Label11: TLabel;
    Edit20: TEdit;
    Label20: TLabel;
    Label21: TLabel;
    Edit21: TEdit;
    Chart1: TChart;
    Series1: TLineSeries;
    SaveDialog1: TSaveDialog;
    BitBtn1: TBitBtn;
    procedure BitBtn3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure N6Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure N9Click(Sender: TObject);
    procedure BitBtn7Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn5Click(Sender: TObject);
    procedure Edit5Change(Sender: TObject);
    procedure Edit9Change(Sender: TObject);
    procedure N7Click(Sender: TObject);
    procedure N5Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  qzjfrm: Tqzjfrm;

implementation
 uses caiji,data,fyps,xuand;
{$R *.dfm}
var
  zs: real;
  n: integer;
  totalrank: integer;
procedure delay1;
var i,j: integer;
begin
  for i:=1 to 50000000 do
  j:=i;
end;
procedure Tqzjfrm.BitBtn3Click(Sender: TObject);
var
  AdoCon   : TADOConnection;
  AdoqAdd  : TADOQuery;
  strsql   : string;
begin
  xdfrm.Edit1.Text :='';
  xdfrm.Edit2.Text :='';
  xdfrm.Edit3.Text :='';
  xdfrm.Edit4.Text :='';
  xdfrm.Edit5.Text :='';
  xdfrm.Edit6.Text :='';
  xdfrm.Edit7.Text :='';
  xdfrm.Edit8.Text :='';
  xdfrm.Edit9.Text :='';
  xdfrm.Edit10.Text :='';
  xdfrm.Edit11.Text :='';
  xdfrm.Edit12.Text :='';
  xdfrm.Edit13.Text :='';
  xdfrm.Edit14.Text :='';
  xdfrm.Edit15.Text :='';
  xdfrm.Edit16.Text :='';
  xdfrm.Edit17.Text :='';
  xdfrm.Edit18.Text :='';
  xdfrm.Edit19.Text :='';
  xdfrm.Edit20.Text :='';
  xdfrm.Edit21.Text :='';
  xdfrm.Edit22.Text :='';
  xdfrm.Edit23.Text :='';
  xdfrm.Edit24.Text :='';
  xdfrm.Edit25.Text :='';
  xdfrm.Edit26.Text :='';
  xdfrm.Edit27.Text :='';
  xdfrm.Edit28.Text :='';
  xdfrm.Edit29.Text :='';
  xdfrm.Edit30.Text :='';
  xdfrm.Edit31.Text :='';
  xdfrm.Edit32.Text :='';
  AdoCon := TADOConnection.Create(self);
  //AdoCon.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\SouceCode\data.mdb;Persist Security Info=False';
  AdoCon.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'\data.mdb;Persist Security Info=False';
  AdoCon.LoginPrompt := false;
  AdoCon.Open;
  AdoqAdd := TADOQuery.Create(self);
  AdoqAdd.Connection := AdoCon;

  strsql := 'select * from coredata';
  AdoqAdd.SQL.Clear;
  AdoqAdd.SQL.Add(strsql);
  AdoqAdd.Open;

  AdoqAdd.Append;
  AdoqAdd.FieldByName('序号').AsInteger := strtoint(Edit1.Text);
  AdoqAdd.FieldByName('井号').AsString := Edit2.Text;
  AdoqAdd.FieldByName('岩样号').AsString := Edit3.Text;
  AdoqAdd.FieldByName('实验方向').AsString := combobox2.Text ;
  AdoqAdd.FieldByName('岩样长度').AsString := Edit5.Text;
  AdoqAdd.FieldByName('岩样直径').AsString := Edit6.Text;
  AdoqAdd.FieldByName('窗子长度').AsString := Edit21.Text;
  AdoqAdd.FieldByName('空气温度').AsString := edit13.Text;
  AdoqAdd.FieldByName('粘度').AsString := Edit7.Text;
  AdoqAdd.FieldByName('大气压').AsString := Edit8.Text;
  AdoqAdd.FieldByName('1/Pu').AsString := Edit20.Text;
  AdoqAdd.FieldByName('平均流量').AsString := Edit19.Text;
  AdoqAdd.FieldByName('实验时间').AsString := Edit4.Text;
  AdoqAdd.FieldByName('渗透率').AsString := Edit11.Text;
  AdoqAdd.FieldByName('渗透率平均值').AsString := Edit12.Text;
  AdoqAdd.FieldByName('克氏渗透率').AsString := Edit16.Text;
  AdoqAdd.FieldByName('相关系数').AsString := Edit17.Text;
  try
    AdoqAdd.Post;
  except
    ShowMessage('岩心标识序号重复!');
  end;
  AdoqAdd.Close;
  AdoqAdd.Free;
  AdoCon.Close;
  AdoCon.Free;

end;

procedure Tqzjfrm.FormCreate(Sender: TObject);
var
  AdoCon   : TADOConnection;
  AdoqAdd  : TADOQuery;
  strsql   : string;
  count    : integer;
  index    :integer;

  //AdoCon   : TADOConnection;
  AdoqXH  : TADOQuery;
  strsqls   : string;
  XH       : integer;
begin
  Edit4.text := datetostr(date);
  AdoCon := TADOConnection.Create(self);
  //AdoCon.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\SouceCode\data.mdb;Persist Security Info=False';
  AdoCon.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'\data.mdb;Persist Security Info=False';
  AdoCon.LoginPrompt := false;
  AdoCon.Open;
  AdoqXH := TADOQuery.Create(self);
  AdoqXH.Connection := AdoCon;

  strsqls := 'select * from coredata order by 序号';
  AdoqXH.SQL.Clear;
  AdoqXH.SQL.Add(strsqls);
  AdoqXH.Open;

  AdoqXH.Last;
  XH := AdoqXH.FieldbyName('序号').asinteger;
  XH := XH + 1;
  AdoqXH.Close;
  AdoqXH.free;
  AdoCon.Close;
  AdoCon.free;
  Edit1.Text:=inttostr(XH);
end;

procedure Tqzjfrm.Timer1Timer(Sender: TObject);
begin
   case combobox1.ItemIndex of
    0:
      begin
      edit9.Text := cjfrm.Edit1.Text ;
      end;
    1:
      begin
      edit9.Text := cjfrm.Edit2.Text ;
      end;
    2:
      begin
      edit9.Text := cjfrm.Edit3.Text ;
      end;
    3:
      begin
       edit9.Text := cjfrm.Edit4.Text ;
      end;  
end;
end;

procedure Tqzjfrm.N8Click(Sender: TObject);
begin
   cjfrm.ShowModal ;
end;

procedure Tqzjfrm.N6Click(Sender: TObject);
begin
    datafrm.ShowModal ;
end;

procedure Tqzjfrm.BitBtn2Click(Sender: TObject);
var
  P0,p,h,L,u,r,A,Pu,liuliang,stl : real;
begin
      edit11.Text := '';
      edit16.Text := '';
      edit12.Text := '';
      edit17.Text := '';
      edit20.Text := '';
      P0:=strtofloat(edit8.Text);
      p:= strtofloat(edit9.Text);
      liuliang:= strtofloat(edit19.Text );
      L:=strtofloat(edit5.Text );
      u:= strtofloat(edit7.Text );
      r:= strtofloat(edit6.Text )/2;
      Pu:= strtofloat(edit14.Text);
     edit20.Text := formatfloat('0.0000',1/Pu);
   case combobox2.ItemIndex of
   0:
     begin
      A:= 3.14159*r*r;
      stl:= 2*P0*liuliang*u*L/A/p/(p+2*P0)/10;
      end;
    1:
      begin
       h:=strtofloat(edit21.Text );
       A:= 1.414*r*h;
       stl:= 2*P0*liuliang*u*1.414*r/A/p/(p+2*P0)/10;
      end;
   end;
      edit11.text:= formatfloat('0.0000000000',stl);
      
end;
procedure Tqzjfrm.N9Click(Sender: TObject);
begin
   xdfrm.Show ;
end;



procedure Tqzjfrm.BitBtn7Click(Sender: TObject);
var
  v,t,liuliang :real;
begin
      v:= strtofloat(edit10.Text );
      t:= strtofloat(edit15.Text );
      liuliang:= v*60/t;
      edit18.Text := formatfloat('0.0000',liuliang);
      zs:= zs+liuliang;
      n:=n+1;
      if n = 3 then
      begin
      showmessage('测试已满三次,请平均渗透率!');
      end;
      edit10.Text :='';
      edit15.Text :='';
end;

procedure Tqzjfrm.BitBtn6Click(Sender: TObject);
var
  ps:real;
begin
   ps:=zs/n/60;
   edit19.Text := formatfloat('0.000',ps);
   n:=0;
end;

procedure Tqzjfrm.BitBtn5Click(Sender: TObject);
begin
   Series1.AddXY(strtofloat(edit20.Text),strtofloat(edit11.Text));
  if xdfrm.Edit1.Text = '' then
   begin
     xdfrm.Edit1.Text := edit11.Text ;
     xdfrm.Edit17.Text := edit20.Text ;
     exit;
    end
  else if xdfrm.Edit2.Text = '' then
   begin
      xdfrm.Edit2.Text := edit11.Text ;
      xdfrm.Edit18.Text := edit20.Text ;
      exit;
    end
   else if xdfrm.Edit3.Text = '' then
   begin
      xdfrm.Edit3.Text := edit11.Text ;
      xdfrm.Edit19.Text := edit20.Text ;
      exit;
    end
   else if xdfrm.Edit4.Text = '' then
   begin
      xdfrm.Edit4.Text := edit11.Text ;
      xdfrm.Edit20.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit5.Text = '' then
   begin
      xdfrm.Edit5.Text := edit11.Text ;
      xdfrm.Edit21.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit6.Text = '' then
   begin
      xdfrm.Edit6.Text := edit11.Text ;
      xdfrm.Edit22.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit7.Text = '' then
   begin
      xdfrm.Edit7.Text := edit11.Text ;
      xdfrm.Edit23.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit8.Text = '' then
   begin
      xdfrm.Edit8.Text := edit11.Text ;
       xdfrm.Edit24.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit9.Text = '' then
   begin
      xdfrm.Edit9.Text := edit11.Text ;
      xdfrm.Edit25.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit10.Text = '' then
   begin
      xdfrm.Edit10.Text := edit11.Text ;
      xdfrm.Edit26.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit11.Text = '' then
   begin
      xdfrm.Edit11.Text := edit11.Text ;
      xdfrm.Edit27.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit12.Text = '' then
   begin
      xdfrm.Edit12.Text := edit11.Text ;
       xdfrm.Edit28.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit13.Text = '' then
   begin
      xdfrm.Edit13.Text := edit11.Text ;
      xdfrm.Edit29.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit14.Text = '' then
   begin
      xdfrm.Edit14.Text := edit11.Text ;
       xdfrm.Edit30.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit15.Text = '' then
   begin
      xdfrm.Edit15.Text := edit11.Text ;
       xdfrm.Edit31.Text := edit20.Text ;
      exit;
    end
    else if xdfrm.Edit16.Text = '' then
   begin
      xdfrm.Edit16.Text := edit11.Text ;
       xdfrm.Edit32.Text := edit20.Text ;
      exit;
    end;

end;

procedure Tqzjfrm.Edit5Change(Sender: TObject);
var
  h:real;
begin
  if combobox2.ItemIndex =1 then
  begin
   h:= sqrt(strtofloat(edit5.Text)*10);
   edit21.Text := formatfloat('0.00',h);
   end;
end;

procedure Tqzjfrm.Edit9Change(Sender: TObject);
var
  Pu,P,P0:real;
begin
    P0:=strtofloat(edit8.Text);
    p:= strtofloat(edit9.Text);
    Pu:=(2*P0+p)/2;
   edit14.Text := formatfloat('0.0000',Pu);
end;

procedure Tqzjfrm.N7Click(Sender: TObject);
begin
   fypsfrm.ShowModal;
end;

procedure Tqzjfrm.N5Click(Sender: TObject);
begin
    close;
end;

procedure Tqzjfrm.BitBtn1Click(Sender: TObject);
begin
  if SaveDialog1.Execute then
  begin
    chart1.SaveToBitmapFile(SaveDialog1.FileName);
  end;
end;

end.

⌨️ 快捷键说明

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