テーブルボックスをスクロールして特定の行を表示する<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />こんにちは。数千行を含むテーブル ボックスがあるため、その行の最初の数行だけがそれを含むウィンドウ内に直接表示されます。残りを表示するには、垂直スクロール バーでテーブル ボックスをスクロールする必要があります。そのテーブル ボックス内のどこかに、特定の基準を満たす行があります。簡単なスクリプトでその行番号がわかり、Set Selected Rows() プロパティがその行番号を強調表示してくれるので、テーブルをその行まで簡単にスクロールして見つけることができます。ボックスは自動的に正しい位置までスクロールし、その行が表示されます。
それをスクリプト化する方法はありますか?「プロパティの表示」コマンドでリストされた、そのような機能を実行する可能性のあるプロパティが表示されません。
どうもありがとう
Re: テーブルボックスをスクロールして特定の行を表示する申し訳ありませんが、それが私のワイヤレスキーボードであることに今気づきました。コンピューターのキーボードで実行すると機能します。
Re: テーブルボックスをスクロールして特定の行を表示するこんにちは、私は何年も F7 キーを使用して次の行を強調表示してきましたが、今は機能しません。これを修正する理由または方法はありますか?
ありがとう、
キャロル
Re: テーブルボックスをスクロールして特定の行を表示するこんにちは。 私も最近同じ質問をしたので、JMP サポートに問い合わせました (Jasean の功績です)。 彼らの解決策は以下に示されていますが、他の誰かがこれに遭遇した場合に備えて共有したかっただけです。 基本的に、TableBox ではスクロール位置を制御できませんが、VScrollBox では制御できます。 したがって、TableBox のスクロールをオフにして、代わりにテーブル ボックスを VScrollBox で囲みます。
Names Default to Here(1);
long_lis = {};
for each({i}, 1::100, InsertInto(long_lis, "Item " || Char(i)));
scb = StringColBox("Long List", long_lis);
tbl = TableBox(scb);
tbl << Set Scrollable(0, 0); //Turning off scrolling in the tbl box
tbl << Set Selectable Rows;
goto_bb = ButtonBox("Go To Item",
toSelect = neb << Get;
ItemCount = NItems(long_lis);
tbl << Set Selected Rows(EvalList({toSelect})); // select desired item
{h_extent, v_extent} = vsb << Get Scroll Extents; // in pixels
// determine portion of list above selected item and scroll to that relative position
portion = toSelect / ItemCount;
if(portion < 0.05, portion = 0);
vsb << Set Scroll Position(0, portion * v_extent); // in pixels
);
winny = NewWindow("test",
goto_bb, neb = Number Edit Box(50),
vsb = VScrollBox(Size(360), tbl) // set the size as number of pixels
);
TableBox にコントロールを直接組み込むほどきれいではないことに同意しますが、機能します。 お役に立てれば。
-ニクルス
Re: テーブルボックスをスクロールして特定の行を表示するテーブルボックスを特定の場所にスクロールさせるためにテーブルボックスに送信できるメッセージを私は知りません。このような要望を出しましたSupport@jmp.com , しかし、今のところ何も見ていません。
私が間違っていることを証明してくれる人がいるといいのですが
Re: テーブルボックスをスクロールして特定の行を表示するこんにちは、ビルさん
そうではないと思います;他のタスクの実行中にユーザー側でアクションを行う必要をなくそうとしているため、これは JSL スクリプトで実行できるようにする必要があります。たとえば、ユーザーが表示する必要がある行は行 12345 であるとスクリプトがすでに決定しているが、テーブル ボックスの最初の 20 行しか画面に表示されない場合、基本的にここで行う必要があるのは送信です。 「行 12345 まで下にスクロールすると、その行がウィンドウ内に表示されます」というメッセージがテーブル ボックスに送信されます。
別の方法の 1 つは、行 12345 の内容を抽出して個別に表示することです。ただし、表内のその位置の周囲に他の情報が含まれている可能性があるため、表示を関連する行まで下にスクロールすることを好みます。ユーザーにとって興味のあるものであること。
実際にはこれができないかもしれませんが、その場合は別の方法を見つけることになりますが、最初に尋ねる価値があると感じました。
どうもありがとう
Re: テーブルボックスをスクロールして特定の行を表示するdqr2 さん、こんにちは。
データをグラフ化していますか?その場合、できることの 1 つは、グラフ内の関心のあるデータ ポイントまたはポイントのセットを強調表示することです。データテーブルに戻り、F7 キーを押します。F7 を入力すると、テーブル内の、選択したポイントのリストの最初にあるデータ ポイントの行に移動します。もう一度 F7 キーを押すと、次のポイントに移動できます。F6 キーを押すと、前のポイントに戻ります。
最高、
請求書