新しいウィンドウの for ループこんにちは! 私は非常に初心者の JMP ユーザーであり、for ループを機能させるのに苦労しています。それぞれの要因がどのような要因であるかをユーザーに尋ねようとしています。 質問される回数は、jmp ファイル内の列の数によって異なります。 ラジオボックスを使用しようとしましたが、追加で問題が発生しました。 以下は私が行ったことの小さなスナップショットです。 ありがとう!
Names Default to Here(1);
dt = Open("Example1.jmp");
number = ncols(dt);
FactorType = {"Continuous", "Categorical"};
New Window("Data Entry", << Modal, << return results,
Text Box("Type of Factor");,
type= V list Box(),
);
For(i= 1, i <= number, i++,
type << Append(Radio Box(FactorType, Max Selected(1)));
);
Re: 新しいウィンドウでの For ループそれは公正な質問です、 @David_Burnham ! おそらくそれは依存すると思いますか? 私は IfBox() をよく使いますが、これは特に表示ボックスの条件付き表示用に設計されています。 このような状況での JSL の「正当性」について話すことはできませんが、いずれにしても OnOpen は素晴らしい提案です。Re: 新しいウィンドウでの For ループ新しいウィンドウ関数呼び出しに for ループを入れることは本当に正当なのでしょうか?私の考えでは、コードが実行される場合でも、表示ボックスが予想される場所に JSL を貼り付けるべきではありません。モーダル ウィンドウの場合、JSL を OnOpen イベント ハンドラーに配置できます。
Re: 新しいウィンドウでの For ループまた会ったね@dg1 、
フォローアップのために、コードをもう少し詳しく調べたところ、問題に遭遇すると思われる箇所がいくつかありました。 最大の点は、結果のアンロードです。 RadioBox() オブジェクトにはそれぞれハンドルが必要で、後で参照してデータを取得できるようになります。 以下にその方法の 1 つを示します。これは、参照をリストに割り当て、後でその参照リストをステップ実行し、メッセージを送信して選択された項目を取得し、結果を別のリストに保存します。 これはすべて、「OK」ボタンをクリックしたときに行われます。
Names Default To Here( 1 );
dt = Current Data Table();
number = N Cols( dt );
rbList = {};
rbResult = {};
FactorType = {"Continuous", "Categorical"};
win = New Window( "Data Entry",
<<MODAL></MODAL>
まだ『JMP スクリプト ガイド』を読んでいない場合は、[ヘルプ] > [書籍] > [スクリプト ガイド] を選択して読むことを強くお勧めします。 これは、スクリプトを思い通りに動作させるために必要な言語と操作を学ぶ上で、非常に貴重なものになります。 また、本もとても楽しかったですJSL Companion: JMP スクリプト言語のアプリケーション。JMP には無料で含まれているため、スクリプト ガイドから始めることになりますが、JSL Companion では、一連の実践的なアプリケーションを通じて JSL の使用方法を体系的に紹介しています (すべてのコードが含まれています)。
これがあなたの道に役立つことを願っています! 楽しむ!
@ジュリアン
Re: 新しいウィンドウでの For ループこんにちは@dg1 、
ウィンドウの上部に表示されているように見えますが、プログラムされているのは 1 回だけです。 列選択ごとに 1 つのテキストボックスが必要な場合は、for() ループの反復ごとに別の追加を行うことができます。
Names Default To Here( 1 );
dt = Open("Example1.jmp");
number = N Cols( dt );
FactorType = {"Continuous", "Categorical"};
New Window( "Data Entry",
<<MODAL></MODAL>

Re: 新しいウィンドウでの For ループありがとう! また、因子の種類を示すテキスト ボックスもラジオ ボックスと一緒に表示されるようにする方法をご存知ですか?Re: 新しいウィンドウでの For ループこんにちは@dg1 、
あなたはすべてを正しくやっています! ただし、<
Names Default To Here( 1 );
dt = Open("Example1.jmp");
number = N Cols( dt );
FactorType = {"Continuous", "Categorical"};
New Window( "Data Entry",
<<MODAL></MODAL>
@ジュリアン