2017-08-26 17 views
0

ネストされた関数内からロールアウトコントロール(チェックボックス、スピンなど)の状態/値にアクセスしようとしています)しかし、私はロールアウトコントロールが定義されていないというエラーが発生し続ける。Mxs:ロールアウト制御値がスコープ内に定義されていません(ファイルイン)

は、私は問題を示すために、いくつかの簡単なコードを書いている:

1)fileinコマンドを使用してファイルを入力メインスクリプト:

Rollout exporter "Simple Exporter" width:300 height:610 (
    button btn_do_stuff "Do stuff" pos:[18,14] width:116 height:60 
    checkbox some_option "some_option" pos:[18,100] width:116 height:60 

    on btn_do_stuff pressed do(
     filein "printstuff.ms" 
    ) 
) 
createdialog exporter 

2)輸入されているスクリプトファイルを

if some_option.checked == true then(
    messagebox "some_option.checked == true" 
    )else(
    "some_option.checked == false" 
    ) 

3)エラーメッセージ:filein()コマンドを使用して

-- Unknown property: "checked" in undefined << 

エラーがfileinを使用してインポートされているスクリプトファイルの1行目で発生します。 エラーは以下の行で発生します。

if some_option.checked == true then(

すべてのヘルプは大歓迎されます、ありがとうございました!

答えて

0

Fileinはグローバルスコープで評価されます。アクセスしようとしているローカル変数ではなく、グローバル変数にのみアクセスできます。つまり、ロールアウト自体がグローバルスコープで宣言されているように見えます(some_option.checkedではなくexporter.some_option.checked)。

関連する問題