パネルボックスで区切られた値を更新する方法みなさん、こんにちは。
更新したいテキスト編集ボックスパネルボックス内。私はそれをやってみましたセット商品 (これは、たとえばパネルボックスで機能するはずです)または、リストボックスがあり、リストから値を分離していない場合、または表示される値がパネルボックスの別の場所にある場合に機能するようです。その問題を解決するためのヒントを教えてください。宜しくお願いします。
//example values that will be updated each time when certain process is selected from the list (not shown here)
param1 = 1;
param2 = 2;
param3 = 3;
param4 = 4;
data_to_display = evallist({param1, param2, param3, param4}); //list of values to be displayed
infos = Panel Box("Module Infos",
V List Box(
H List Box(
V List Box(
Text Box( "Param1:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param2:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
Text Edit Box( Char( data_to_display[1] ), << Set Width( 130 ) ),
Spacer Box(Size(10, 3)),
Text Edit Box( Char( data_to_display[2] ), << Set Width( 130 ) ),
),
Spacer Box(Size(40, 5)),
V List Box(
Text Box( "Param3:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param4:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
Text Edit Box( Char( data_to_display[3] ), << Set Width( 100 ) ),
Spacer Box(Size(10, 3)),
Text Edit Box( Char( data_to_display[4] ), << Set Width( 100 ) ),
),
),
),
),
),
infos << Set items( data_to_display );
再:パネルボックス内の分離された値を更新する方法?メッセージはダウンするのではなく、チェーンを上ります。infosで参照されるオブジェクトへのメッセージは失われます。テキストボックスを作成するために呼び出された関数から返された参照を保存し、変数を使用してSet()メッセージをそのボックスに直接送信する必要があります。
tb1 = Text Box( "Param1:" )
tb1 << Set( ... );
再:パネルボックス内の分離された値を更新する方法?パネルボックスには他のオブジェクトのみが含まれます。 パネルボックスのタイトルを設定できますが、それで終わりです。 スクリプトインデックスは、どのメソッドがどの表示オブジェクトで機能するかを見つけるのに最適です。
再:パネルボックス内の分離された値を更新する方法?返信ありがとうございます。テキスト編集ボックスを更新しました。私の場合、表示されるテキストはリストボックスで以前に選択されたものに依存します。アプリケーションの開始時に空のテキストボックスを用意したかったので、テキストボックスの変数の更新をテキストボックスの前のパネルボックスの前に移動しました。リストボックスのオプションが選択された直後にあります。そして、私は望ましい効果を得ました。宜しくお願いします
new window("example",
H List Box(
Panel Box("Params",
params = List Box(
unique_param_list,
max selected( 1 ),
//todo..
//and then update of variables
t1 << set text(var1);
t2 << set text(var2);
t3 << set text(var3);
t4 << set text(var4);
),
),
Panel Box("Module Infos",
V List Box(
H List Box(
V List Box(
Text Box( "Param1:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param2:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
t1 = Text Edit Box( " ", << Set Width( 130 ) ),
Spacer Box(Size(10, 3)),
t2 = Text Edit Box( " ", << Set Width( 130 ) ),
),
Spacer Box(Size(40, 5)),
V List Box(
Text Box( "Param3:" ),
Spacer Box(Size(10, 6)),
Text Box( "Param4:" ),
),
Spacer Box(Size(15, 5)),
V List Box(
t3 = Text Edit Box( " ", << Set Width( 100 ) ),
Spacer Box(Size(10, 3)),
t4 = Text Edit Box( " ", << Set Width( 100 ) ),
),
),
),
),
);