問題タブ [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.

0 投票する
2 に答える
1142 参照

delphi - Delphi Web Script(DWScript)は、スクリプト メソッドを外部制御イベントにリンクします

DWScript がスクリプト メソッドを Delphi フォーム上のコントロールのイベント ハンドラとして使用することをサポートしているかどうか疑問に思っています。たとえば、スクリプトに存在するメソッドに TButton OnClick イベントをリンクしたいとします。

TMethod オブジェクトを返す GetProcMethod を呼び出すことで、RemObjects Delphi スクリプト エンジンでこれを行うことができます。次に、SetMethodProp を使用して、スクリプト メソッドをボタンの OnClick イベントに割り当てます。

Rem オブジェクト スクリプト エンジンではなく、DWScript でこれを実行したいと考えています。これは、必要な他の処理を実行するためです。

0 投票する
1 に答える
248 参照

delphi - DWScript: 実行時に新しい配列定義を dwsUnit に追加します

dwsUnitDelphi XE2 を使用して、実行時に配列定義をコンポーネントに追加するために呼び出すメソッドは何ですか?

MyDwsUnit.Arrays.AddTCollectionItemではなくを返しますが、TdwsArray設計時に配列定義を追加するとTdwsArrayインスタンスが追加されます!

0 投票する
1 に答える
403 参照

delphi - DWScript: 呼び出し後に結果を取得する方法

わかりました、私は DWScript をまったく初めて使用します。今のところ、私はその機能に魅了されていますが、付属の wiki のすべてのページと質問/回答をここで読んでいますが、次のように Delphi から関数が呼び出された後に結果を抽出する方法をまだ見つけることができません。

そして、私は立ち往生しています:exec.result.toString私に何も与えません. 私が見ている限りResult、execオブジェクトには何もありません。そのため、スクリプトスタックからアイテムをクリアすると、結果が削除されて失われます。この単純なタスクを実行する適切な方法についてアドバイスをお願いします。

0 投票する
1 に答える
518 参照

delphi - DelphiWebScript での値の実行時評価

私の Delphi アプリケーションは、JvInterpreter (Jedi プロジェクトから) を使用してスクリプトを実行します。

私が使用する機能は、式の実行時評価です。
スクリプト例:

JvInterpreter は X_SomeName を知りません。X_SomeName の値が必要な場合、スクリプト作成者はその OnGetValue コールバックを呼び出します。これは、私が扱う関数を指しています。そこで、X_SomeName の値を検索して返します。次に、JvInterpreter は、私が提供した値で ShowMessage を呼び出します。

DelphiWebScript には適切なデバッグ インターフェイスがあり、JvInterpreter よりも高速であるため、DelphiWebScript に切り替えることを検討しています。

問題: JvInterpreter がその OnGetValue/OnSetValue 関数で行うことを実装する明確な方法が見つかりませんでした。

X_SomeName は、ホスト アプリケーションによって処理される変数と見なす必要があります (実際にはほとんどの場合そうです)。

何か案は?

ありがとう!

0 投票する
2 に答える
331 参照

delphi - DWScript でのエントリ ポイントの設定

DWScript でエントリ ポイントを設定する方法はありますか?

たとえば、スクリプトの実行を開始する場合、通常のエントリ ポイント (begin ... end.) のコードではなく、プロシージャ Main を実行したいと考えています。

Delphi から関数を実行できることは知っていますが、これがまったく同じかどうかはわかりません。

0 投票する
1 に答える
181 参照

delphi - dwscript に暗黙的/明示的な型キャスト演算子を登録する

Delphi から暗黙的および/または明示的な型キャスト演算子を登録することは可能ですか?

http://code.google.com/p/dwscript/issues/detail?id=124を見つけましたが、スクリプト内の演算子のオーバーロードに対処しているようで、かなり古い問題です。

0 投票する
1 に答える
248 参照

delphi - DWScript で Delphi からレコード タイプにメソッドを追加する

TRecordSymbol を作成した後、それにコンストラクタとメソッドを追加するにはどうすればよいですか? メソッドの実行を定義する方法が見つからないため、TMethodSymbol を使用してみましたが、ほとんど成功しませんでした。

0 投票する
1 に答える
187 参照

delphi - DWScriptのTProgramInfoからレコードパラメータを取得する

TdwsUnitの関数のEvalイベントでTProgramInfoオブジェクトからレコードパラメータを取得するにはどうすればよいですか?このオブジェクトは、基本的なデータ型を直接取得する方法、または場合によってはスクリプトオブジェクトを取得する方法のみを提供しているようです。

0 投票する
1 に答える
114 参照

delphi - TdwsUnitでメソッドを記録する

TdwsUnitのレコードにメソッドを追加する方法はありますか?Membersプロパティでは、フィールドの追加のみが許可されているようです。また、コンストラクターを登録することもできますか?

0 投票する
1 に答える
193 参照

delphi - TdwsUnitのパフォーマンス

TdwsUnitに関数を登録すると、dwsMathComplexFunctions.pasユニットに登録されているような通常の魔法の関数と同じパフォーマンスが得られますか?