Recent

Author Topic: PScript or MagicScript add component  (Read 199 times)

eldonfsr

  • Hero Member
  • *****
  • Posts: 543
PScript or MagicScript add component
« on: March 15, 2025, 09:44:53 pm »
Hi i tried PascalScript i see a tutorial on youtube and that component for delphi script show a event..

Script1.addComponent(Button);

what i need is send to script a component and vars this way i can values and do action on script...
Code: Pascal  [Select][+][-]
  1. procedure TFAmps.BtnSaveClick(Sender: TObject);
  2. Var StrVals,RegName,StrPre,StrPos,MMacro,NMacro :String;
  3.     myrEG:Array of String;
  4.     PosR,PosI,PosF,IC,PosAl:Integer;
  5. begin
  6.   if( CbControl.ItemIndex >-1) then begin
  7.     MYrEG :=['WW610','WB620','Wl612','AR30'];
  8.     MMacro:=BDControls.FieldByName('MMacro').AsString;
  9.     for ic:=0 to Length(MyReg)-1 do begin
  10.          RegName:=MyReg[ic];
  11.          posR:= Rpos(RegName, MMacro);
  12.          STrpre:=Copy(MMacro,0, PosR);
  13.          PosAL:=Rpos('AL',StrPre)-1;
  14.          NMacro:= Copy(StrPre,0,PosAL);
  15.          if( Ic=0) then begin
  16.             NMacro:=NMacro+'AL'+FloatToStr(Round(JFESTVal.Value))+','+Regname+',';
  17.          end;
  18.          if( Ic=1) then begin
  19.             NMacro:=NMacro+'AL'+Copy(FloatToStr(Round(JIEI2pC2.Value)),0,9)+','+Regname+',';
  20.          end;
  21.          if( Ic=2) then begin
  22.             NMacro:=NMacro+'AL'+InttoStr(Round(JIEOILPeak.Value))+','+Regname+',';
  23.          end;
  24.          if( (Ic=3) and (JFlETemp2.Value>0) ) then begin
  25.             NMacro:=NMacro+'AL'+FloatToStr(Round(JFlETemp2.Value))+','+Regname+',';
  26.          end;
  27.     end;
  28.     posR:= Rpos(MyReg[Length(MyReg)-1], MMacro)+1 ;
  29.     NMacro:=NMacro+Copy(MMacro,Posr+length(Regname),Length(MMacro)-Posr+length(Regname));
  30.     Case FormMain.JvPageCtrl.ActivePageIndex of
  31.      0: begin
  32.             FormMain.LSP1.WriteData(NMacro+LineEnding);
  33.         end;
  34.         1: Begin
  35.              FormMain.LSP2.WriteData(NMacro+LineEnding);
  36.         end;
  37.         2: begin
  38.             FormMain.LSP3.WriteData(NMacro+LineEnding);
  39.         end;
  40.         3: Begin
  41.               FormMain.LSP4.WriteData(NMacro+LineEnding);
  42.         end;
  43.         4: begin
  44.             FormMain.LSP5.WriteData(NMacro+LineEnding);
  45.         end;
  46.     end;
  47.   end;
  48.   Self.close;
  49. end;
  50.  
  51.  
  52.  

 

TinyPortal © 2005-2018