Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - [RemObjects Pascal Script] Variable regestrieren


Bergmann89 - Do 12.11.09 21:38
Titel: [RemObjects Pascal Script] Variable regestrieren
HI,

ich bin grad dabei mich mit RemObjects Pascal Script zu beschäftigen. Und ich hab ein Problem, und zwar hab ich mir das Bsp. angesehen, wie da die Variablen an den Script weitergegeben werden:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TForm1.PSScriptCompile(Sender: TPSScript);
begin
  Sender.AddRegisteredVariable('Self''TForm');
  Sender.AddRegisteredVariable('Memo1''TMemo');
  Sender.AddRegisteredVariable('Memo2''TMemo');
end;

procedure TForm1.PSScriptExecute(Sender: TPSScript);
begin
  Sender.SetVarToInstance('SELF', Self);
  Sender.SetVarToInstance('MEMO1', Memo1);
  Sender.SetVarToInstance('MEMO2', Memo2);
end;


Das wollt ich jetzt auf meine Bedürfnisse umbauen:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TTexture.ScriptCompile(Sender: TPSScript);
begin
  Sender.AddRegisteredVariable('PosX''Integer');
end;

procedure TTexture.ScriptExecute(Sender: TPSScript);
begin
  Sender.SetVarToInstance('PosX'fPosX);
end;

da meckert er aber rum, das fPosX kein TObject ist. da hab ich mir gedacht OK, packst alle Variablen die du brauchst in ein Objekt un übergibst das, geht aber auch nich, da er nur die StandartObjekte erkennt. Also würd ich jetzt gern wissen, wie ich entweder die Variablen, die keine Objekte sind (Single, Integer, ...) übergeben kann, oder wie ich mein eigenes Objekt so übergeb, das er das auch erkennt...

MfG & Thx Bergmann.


Bergmann89 - Fr 13.11.09 19:00

Hey,

ich weiß jezt wie ichd as Objekt rein bekomm, gibt ja nich umsonst n UnitImporter^^
Aber jetzt hab ich n anderes Problem. Und zwar wird der Script vom Prog zur Laufzeit gegelmäßig ausgeführt. Und da brauch ich auch n paar Variablen die vom Objet gehalten werden und bei der nächsten Script-Asuführung wieder benutz werden können. Muss ich mir da selber was basteln, oder kann ads der Script schon iwie so?

MfG Bergmann.