1

RTTIVariable 型を使用して dws スクリプトをコンパイルすると、「無効なオペランド」というコンパイル エラーが発生します。以下で動作する可能性はありますか?

フォームである変数を宣言します。

gVar := ScriptUnit.Variables.Add;
gVar.Name := 'MDIForm';
gVar.DataType := SYS_RTTIVARIANT;
gVar.OnReadVar := onGetMDI;

procedure TGuff.onGetMDI(info: TProgramInfo; var value: Variant);
begin
  value := TdwsRTTIVariant.FromObject(FMDIForm);
end;

スクリプトは、この行ではコンパイルされません。文字列のみが必要なようです。

if (length(MDIForm.edit1.Text) = 0) then

すべての助けに感謝

4

1 に答える 1

0

これはトランク バージョンでサポートされるようになりました。タイプ チェックが少し厳しすぎて、RTTI (および OLE) バリアントが拒否されました。

于 2013-05-28T09:28:23.613 に答える