var e:Extended; s:String;
Begin
Result:=true;
e := GetReal(ed.Text);
if (Code<>0) then begin
ShowMessage ('Ошибка!');
ed.SetFocus; //активизирует объект с ошибкой
Result:=false;
end;
end;
end.
Форма для коригування властивостей речовин(матеріалів).
Форма таблиці коригування термодинамічних властивостей
аміаку на лінії насичення
Рисунок 5. Зовнішній вигляд форми властивостей на лінії насичення
unit uNH3Satur;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms, Dialogs, upMDForm, Grids, DBGrids,
DBCtrls, StdCtrls, Buttons, ExtCtrls;
type
TfmNH3Satur = class(TfmSimpleMD)
procedure bbChoiceClick(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
var fmNH3Satur: TfmNH3Satur;
implementation uses uDM; {$R *.dfm}
procedure TfmNH3Satur.bbChoiceClick(Sender: TObject);
begin inherited;
if DM.cdsNH3_Satur.Active then DM.cdsNH3_Satur.Close ;
DM.taNH3_Satur.ParamByName('id').AsInteger := DM.Num_Substance ;
DM.cdsNH3_Satur.Open ;
end;
end.
Форма таблиці коригування термодинамічних властивостей
сухої перегрітої пари аміаку
Рисунок 6. Зовнішній вигляд форми властивостей парової фази
unit uNH3vapSH;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, upMDForm, Grids, DBGrids, DBCtrls, StdCtrls, Buttons, ExtCtrls;
type
TfmNH3vapSH = class(TfmSimpleMD)
procedure bbChoiceClick(Sender: TObject);
private { Private declarations }
public { Public declarations }
end;
var fmNH3vapSH: TfmNH3vapSH;
implementation uses uDM; {$R *.dfm}
procedure TfmNH3vapSH.bbChoiceClick(Sender: TObject);
begin inherited;
if DM.cdsNH3sh.Active then DM.cdsNH3sh.Close ;
DM.taNH3sh.ParamByName('id').AsInteger := DM.Num_Substance;
DM.cdsNH3sh.Open ;
end;
end.
Форма розрахунку термодинамічних властивостей аміаку
на лінії насичення.
Рисунок 7. Зовнішній вигляд форми розрахунку властивостей
на лінії насичення
unit uSearchSat;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms, Dialogs, Grids, StdCtrls, Buttons,
ExtCtrls, SqlExpr;
// К-во отображаемых результатов и всего результатов
Const ABS_NULL = -273.16 ; NN = 8; AN = 8;
type
TfmCalcNH3Satur = class(TForm)
paInd: TPanel; Panel2: TPanel; Panel3: TPanel;
Panel4: TPanel; Panel5: TPanel; Panel6: TPanel;
Panel7: TPanel; Panel8: TPanel;
Panel9: TPanel; Panel10: TPanel; edT: TEdit; edP: TEdit;
bbChoose: TBitBtn; bbSearchT: TBitBtn;
bbSearchPw: TBitBtn;
bbClose: TBitBtn; Panel11: TPanel; Panel12: TPanel;
sgRes: TStringGrid;
procedure FormCreate(Sender: TObject);
procedure bbChooseClick(Sender: TObject);
procedure bbSearchTClick(Sender: TObject);
procedure edTExit(Sender: TObject);
procedure bbSearchPwClick(Sender: TObject);
private { Private declarations }
minT, minPW, maxT, maxPW, p,t :Extended ;
iP :Array[0..AN,1..3] of Extended ;
public { Public declarations }
Procedure GetLimits;
Function isTInLimits(t :Extended) :Boolean;
Function isPwInLimits(p :Extended) :Boolean;
Function GetVars(qu :TSQLQuery) :Boolean ;
Procedure ShowNumbers ;
end;
var
fmCalcNH3Satur: TfmCalcNH3Satur;
implementation
uses uFmGr, uDM, DB, uDebug;
{$R *.dfm}
procedure TfmCalcNH3Satur.FormCreate(Sender: TObject);
Const st :array [1..AN] of string = (
'Температура t, °C', 'Давление p, Па',
'Удельный объем жидкости, м3/кг','Удельный объем пара,м3/кг',
'Энтальпия жидкости i`, Дж/кг', 'Энтальпия пара i", Дж/кг',
'Энтропия жидкости s`,Дж/(кг*К)',
'Энтропия пара s",Дж/(кг*К)');
var i :Integer;
begin
sgRes.RowCount := AN+1 ;
sgRes.ColWidths[0] := 450 ;
sgRes.ColWidths[1] := 150 ;
sgRes.Cells[0,0] := 'Показатель' ;
sgRes.Cells[1,0] := 'Значение' ;
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.