列マッチングダイアログのスクリプトを作成する方法列のペアを照合するためにユーザーが必要なダイアログがあります。 結合テーブルで行うのとほとんど同じです。

具体例-実験的に測定されたパラメータのセットとそれらの理論的予測のセットがあります。 このデータはさまざまなソースから取得され、列の名前は任意である可能性があるため、ユーザーは各パラメーターの理論と実験を一致させる必要があります。
この部分をスクリプト化する方法の例はありますか? そして、これらのペアを保持する方法と後でそれらを使用する方法は?
これまでのところ、これがあり、一致したペアを反映するように緑色のフレームでボックスをスクリプト化する方法(上記の例のように)、それらのペアを保持する方法(2つのアイテムリストのリスト?)、および削除/リコールする方法に興味がありますそれらなど:

そして、ここにスクリプトがあります:
dt = New Table( "Untitled 5",
Add Rows( 4 ),
Set Header Height( 46 ),
New Column( "X", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1, 2, 3, 4] ) ),
New Column( "A_Theory", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1, 3, 2, 3] ) ),
New Column( "B_Measured", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [4, 5, 6, 5] ) ),
New Column( "A_Measured", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1, 4, 3, 4] ) ),
New Column( "B_Theory", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [4, 5, 3, 4] ) )
);
notImplemented = Expr(
win = New Window( "Feature Not Implemented Yet", <<MODAL></MODAL>
スクリプティングRe:列照合ダイアログのスクリプトを作成する方法推測する必要がある場合、joinプラットフォームは、列のペアを追加するときに新しい値を追加するリストボックスを使用します。
Names Default To Here(1);
dt = New Table("Untitled 5",
Add Rows(4),
Set Header Height(46),
New Column("X", Numeric, "Continuous", Format("Best", 12), Set Values([1, 2, 3, 4])),
New Column("A_Theory", Numeric, "Continuous", Format("Best", 12), Set Values([1, 3, 2, 3])),
New Column("B_Measured", Numeric, "Continuous", Format("Best", 12), Set Values([4, 5, 6, 5])),
New Column("A_Measured", Numeric, "Continuous", Format("Best", 12), Set Values([1, 4, 3, 4])),
New Column("B_Theory", Numeric, "Continuous", Format("Best", 12), Set Values([4, 5, 3, 4]))
);
notImplemented = Expr(
a = clb1 << get selected;
b = clb2 << get selected;
lb << Append(a[1] || "=" || b[1]);
);
gui = Expr(
H List Box(
V List Box(
Panel Box("Theory",
clb1 = Col List Box(All, Nlines(5))
),
Panel Box("Experiment",
clb2 = Col List Box(All, Nlines(5))
)
),
Panel Box("Theory vs Experiment Matching",
H List Box(
Button Box("Match", notImplemented),
lb = List Box({}, Nlines(12))
)
)
)
);
fileLoad = New Window("Example", Show Menu(0), Show Toolbars(0), gui);
//{col1, col2} = Words((lb << get items)[1], "=");

スクリプトをすばやくまとめたので、変数よりも適切な名前を使用し、列リストボックスで複数の値が選択されないようにし、ハードコードされた列インデックスの制限を削除します。 値が必要な場合は、<< get items to the list box referenceを使用して取得できます。これにより、アイテムのリストが表示されます。 次に、Words()を使用して、それをさらに別の部分に分割します。