問題タブ [dwscript]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - Delphi Web Script(DWScript)は、スクリプト メソッドを外部制御イベントにリンクします
DWScript がスクリプト メソッドを Delphi フォーム上のコントロールのイベント ハンドラとして使用することをサポートしているかどうか疑問に思っています。たとえば、スクリプトに存在するメソッドに TButton OnClick イベントをリンクしたいとします。
TMethod オブジェクトを返す GetProcMethod を呼び出すことで、RemObjects Delphi スクリプト エンジンでこれを行うことができます。次に、SetMethodProp を使用して、スクリプト メソッドをボタンの OnClick イベントに割り当てます。
Rem オブジェクト スクリプト エンジンではなく、DWScript でこれを実行したいと考えています。これは、必要な他の処理を実行するためです。
delphi - DWScript: 実行時に新しい配列定義を dwsUnit に追加します
dwsUnit
Delphi XE2 を使用して、実行時に配列定義をコンポーネントに追加するために呼び出すメソッドは何ですか?
MyDwsUnit.Arrays.Add
TCollectionItem
ではなくを返しますが、TdwsArray
設計時に配列定義を追加するとTdwsArray
インスタンスが追加されます!
delphi - DWScript: 呼び出し後に結果を取得する方法
わかりました、私は DWScript をまったく初めて使用します。今のところ、私はその機能に魅了されていますが、付属の wiki のすべてのページと質問/回答をここで読んでいますが、次のように Delphi から関数が呼び出された後に結果を抽出する方法をまだ見つけることができません。
そして、私は立ち往生しています:exec.result.toString
私に何も与えません. 私が見ている限りResult
、execオブジェクトには何もありません。そのため、スクリプトスタックからアイテムをクリアすると、結果が削除されて失われます。この単純なタスクを実行する適切な方法についてアドバイスをお願いします。
delphi - DelphiWebScript での値の実行時評価
私の Delphi アプリケーションは、JvInterpreter (Jedi プロジェクトから) を使用してスクリプトを実行します。
私が使用する機能は、式の実行時評価です。
スクリプト例:
JvInterpreter は X_SomeName を知りません。X_SomeName の値が必要な場合、スクリプト作成者はその OnGetValue コールバックを呼び出します。これは、私が扱う関数を指しています。そこで、X_SomeName の値を検索して返します。次に、JvInterpreter は、私が提供した値で ShowMessage を呼び出します。
DelphiWebScript には適切なデバッグ インターフェイスがあり、JvInterpreter よりも高速であるため、DelphiWebScript に切り替えることを検討しています。
問題: JvInterpreter がその OnGetValue/OnSetValue 関数で行うことを実装する明確な方法が見つかりませんでした。
X_SomeName は、ホスト アプリケーションによって処理される変数と見なす必要があります (実際にはほとんどの場合そうです)。
何か案は?
ありがとう!
delphi - DWScript でのエントリ ポイントの設定
DWScript でエントリ ポイントを設定する方法はありますか?
たとえば、スクリプトの実行を開始する場合、通常のエントリ ポイント (begin ... end.) のコードではなく、プロシージャ Main を実行したいと考えています。
Delphi から関数を実行できることは知っていますが、これがまったく同じかどうかはわかりません。
delphi - dwscript に暗黙的/明示的な型キャスト演算子を登録する
Delphi から暗黙的および/または明示的な型キャスト演算子を登録することは可能ですか?
http://code.google.com/p/dwscript/issues/detail?id=124を見つけましたが、スクリプト内の演算子のオーバーロードに対処しているようで、かなり古い問題です。
delphi - DWScript で Delphi からレコード タイプにメソッドを追加する
TRecordSymbol を作成した後、それにコンストラクタとメソッドを追加するにはどうすればよいですか? メソッドの実行を定義する方法が見つからないため、TMethodSymbol を使用してみましたが、ほとんど成功しませんでした。
delphi - DWScriptのTProgramInfoからレコードパラメータを取得する
TdwsUnitの関数のEvalイベントでTProgramInfoオブジェクトからレコードパラメータを取得するにはどうすればよいですか?このオブジェクトは、基本的なデータ型を直接取得する方法、または場合によってはスクリプトオブジェクトを取得する方法のみを提供しているようです。
delphi - TdwsUnitでメソッドを記録する
TdwsUnitのレコードにメソッドを追加する方法はありますか?Membersプロパティでは、フィールドの追加のみが許可されているようです。また、コンストラクターを登録することもできますか?
delphi - TdwsUnitのパフォーマンス
TdwsUnitに関数を登録すると、dwsMathComplexFunctions.pas
ユニットに登録されているような通常の魔法の関数と同じパフォーマンスが得られますか?