![]() |
Skript für Programm nutzen
Hallo,
ich möchte folgendes realisieren: ich habe in meinem Programm zum beispiel folgende Klasse:
Delphi-Quellcode:
jetzt möchte ich in einem Skript eine neue Klasse von der aus dem Programm ableiten, also so:
TCreateEvent = procedure of Object;
TRobot = class(TObject) private FOnCreate : TCreateEvent; public RobotColor : TColor; procedure OnCreate; end;
Delphi-Quellcode:
jetzt möchte ich im Programm das skript laden und wenn eine Klasse die von TRobot abgeleitet ist, in diesem Fall TMyRobot, ein Objekt von TMyRobot erstellen und dessen Funktionen usw. ausführen. TMyRobot = class(TRobot) public procedure DoSomething; procedure OnCreate;override; end; procedure TMyRobot.OnCreate; begin RobotColor := clRed; DoSomething; end; procedure TMyRobot.DoSomething; begin //Irgendwas tun end; Kennt jemand Komponenten mit denen das schon möglich ist, bzw. weis jemand wie/ob ich das selbst machen kann? Also die Klasse aus dem Skript soll natürlich noch mehr können, nur dass das Prinzip klar ist. Also hat da jemand einen Tipp für mich? :angel: |
Re: Skript für Programm nutzen
Was meinst du mit Skript?
|
Re: Skript für Programm nutzen
na das ich in eine Memo-Komponente eben sowas eingebe:
Delphi-Quellcode:
Das soll dann interpretiert werden und die Prozeduren aus diesem sollen dann ausgeührt werden.
unit Skriptunit;
interface type TMyRobot = class(TRobot) public procedure DoSomething; procedure OnCreate;override; end; implementation procedure TMyRobot.OnCreate; begin RobotColor := clRed; DoSomething; end; procedure TMyRobot.DoSomething; begin //Irgendwas tun end; end. |
Re: Skript für Programm nutzen
Dann brauchst du ja einen Pascalinterpreter. Und wie Achim, in dir in deinem letzten Thread erklärt hat, werden Klassen von TJvInterpreter nicht unterstütz werden.
Du könntest die mal ![]() |
Re: Skript für Programm nutzen
Ich glaube, dafür gibt es keine Komponente. Aber ich kann dir das Stichwort
![]() ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz