Создание обучающей системы автоматизированного проектирования маломощных электромеханических следящих систем, страница 49

  Table1.FieldByName('Peregrev').AsFloat:=gamma_eqv;

  Table1.FieldByName('Peregruzka').AsFloat:=gamma_per;

end;

// По закрытию программы

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

var

  Path : String;

  Ini : TIniFile;

begin

 if Application.MessageBox('Вы действительно хотите выйти?','Выход',MB_YESNO or MB_ICONASTERISK)=mrNO then

  Action := caNone // Не выходить

 else begin

  // Сохраняем текущие исходные данные

  Path := Application.ExeName;

  Path:=ExtractFileDir(Path); // отбрасываем название программы. Остается путь.

  if Path[Length(Path)]<>'\' then Path:=Path+'\'; // если последний символ не \ то добавить его

  // Создали INI файл в директории программы

Ini:=TiniFile.Create(Path + 'StartData.ini');

  // Заполняем его

  Try

   Ini.WriteFloat('Date','Mst',StrToFloat(Edit1.Text));

   Ini.WriteFloat('Date','I',StrToFloat(Edit2.Text));

   Ini.WriteFloat('Date','w',StrToFloat(Edit3.Text));

   Ini.WriteFloat('Date','eps',StrToFloat(Edit4.Text));

   Ini.WriteFloat('Date','TetaD',StrToFloat(Edit5.Text));

   Ini.WriteFloat('Date','TetaSt',StrToFloat(Edit6.Text));

   Ini.WriteFloat('Date','M',StrToFloat(Edit7.Text));

   Ini.WriteFloat('Date','tau1',StrToFloat(Edit8.Text));

   Ini.WriteFloat('Date','tau2',StrToFloat(Edit9.Text));

   Ini.WriteFloat('Date','K',StrToFloat(Edit10.Text));

   Ini.Free; // Закрываем ини файл

  except

begin

      DeleteFile(Path + 'StartData.ini');

      Action := caFree; // Выход

    end;

  end;

  Action := caFree; // Выход

 end;

end;

procedure TForm1.EngineGridSelectCell(Sender: TObject; ACol, ARow: Integer;

  var CanSelect: Boolean);

begin

  selected:=ARow;

  if EngineGrid.Cells[1,ARow]='' then

  else begin

    Label24.Caption:='Передаточное число равно: '+FloatToStrF(pch(),ffFixed,5,5);

  end;

end;

procedure TForm1.FormCreate(Sender: TObject);

var i : integer;

    Path : String;

    Ini : TIniFile;

begin

  // Открываем файл с данными и заполняем поля

Path := Application.ExeName;

  Path:=ExtractFileDir(Path); // отбрасываем название программы. Остается путь.

  if Path[Length(Path)]<>'\' then Path:=Path+'\'; // если последний символ не \ то добавить его

  // Создали INI файл в директории программы

Ini:=TiniFile.Create(Path + 'StartData.ini');

  Edit1.Text := FloatToStr(Ini.ReadFloat('Date','Mst',0.07));

  Edit2.Text := FloatToStr(Ini.ReadFloat('Date','I',0.06));

  Edit3.Text := FloatToStr(Ini.ReadFloat('Date','w',40));

  Edit4.Text := FloatToStr(Ini.ReadFloat('Date','eps',18));

  Edit5.Text := FloatToStr(Ini.ReadFloat('Date','TetaD',12));

  Edit6.Text := FloatToStr(Ini.ReadFloat('Date','TetaSt',3));

  Edit7.Text := FloatToStr(Ini.ReadFloat('Date','M',1.4));

  Edit8.Text := FloatToStr(Ini.ReadFloat('Date','tau1',10));

  Edit9.Text := FloatToStr(Ini.ReadFloat('Date','tau2',3));

  Edit10.Text := FloatToStr(Ini.ReadFloat('Date','K',0.9));

  Ini.Free; // Закрываем ини файл

  // Заполнение таблиц

curDM:=1;

  curU:=1;

  OutputDM();

  OutputU();

  for i:=1 to UpDown1.Max do PeredGrid.Cells[0,i] := IntToStr(i);

  for i:=1 to 2*UpDown1.Max do DiameterGrid.Cells[0,i] := IntToStr(i);

  PeredGrid.Cells[0,0]:='№ ступени';

  PeredGrid.Cells[1,0]:='Перед. число';

  DiameterGrid.Cells[0,0]:='№ шестерни';

  DiameterGrid.Cells[1,0]:='Диаметр, мм';

  SensorGrid.Cells[0,0]:='Название';

  SensorGrid.Cells[1,0]:='К трансф.';

  SensorGrid.Cells[2,0]:='Частота, Гц';

  SensorGrid.Cells[3,0]:='U пит., В';

  SensorGrid.Cells[4,0]:='Угл. скорость, угл.мин.';

  SensorGrid.Cells[5,0]:='Кчэ, В/рад';

  //1-й ЧЭ

  SensorGrid.Cells[0,1]:='12ВТМ-20';

  SensorGrid.Cells[1,1]:='0,56';

  SensorGrid.Cells[2,1]:='400';

  SensorGrid.Cells[3,1]:='40';

  SensorGrid.Cells[4,1]:='1';

  SensorGrid.Cells[5,1]:='12,5';

  //2-й ЧЭ

  SensorGrid.Cells[0,2]:='ЛШ3.010.390-П';

  SensorGrid.Cells[1,2]:='0,96';