複数のアウトライン ボックスを閉じることができるようにするこんにちは。ユーザーがコントロール キーを押し続けることで複数のアウトライン ボックスを閉じることができる、ほとんどの JMP プラットフォームの動作を私のスクリプトで再現したいと思います。
たとえば、次の例では、ユーザーが「ctrl」を押したときに「1」と「2」を一緒に閉じることができるようにしたいと考えています。
新しい窓( "元" 、アウトラインボックス( "主要" 、アウトラインボックス( 「1」 、 vlist ボックス())、アウトラインボックス( "2" 、 vlistbox ())));
これについては、スクリプト インデックスで提案を見つけることができません。
ありがとう
マッテオ
ありがとう
マッテオ
Re: 複数のアウトライン ボックスを閉じることができるようにするJim の返信を見て、私はおそらく少し性急だったことに気づきました (ただし、それはあなたが望む動作に依存する可能性があります)。 したがって、明確にするために(Macで)CTRLキーを押しながら、元の質問のコードによって作成された「メイン」アウトラインノードの開示アイコンを左クリックすると、次のコンテキストメニューが生成されます。

これには、私の「setMenuScript()」が行うことを行うオプションが既にあります。 このコンテキスト メニューは、右クリック (CTRL キーなし) でも表示されます。
Re: 複数のアウトライン ボックスを閉じることができるようにするどうやらあなたが望むものの部分的な実装があります。以下のスクリプトは、アウトライン ボックスが CNTL 機能を尊重できるようにします。
names default to here( 1 );
New Window( "test",
V List Box(
Outline Box( "testit", Table Box( String Col Box( "test one", {"a", "b"} ) ) ),
Outline Box( "testit", Table Box( String Col Box( "test two", {"c", "d"} ) ) )
)
);Re: 複数のアウトライン ボックスを閉じることができるようにするありがとう、イアン
あなたが書いたように、これはまさに私が探していたものではありませんが、あなたのアイデアは回避策になる可能性があります。試してみます!
それでも、表示ツリー内の同様の表示ボックスにコマンドをブロードキャストすることが、組み込み関数では実行できないことに少し驚いています。 これがJMP 14で実装されることを願っています!
ありがとう
マッテオ
Re: 複数のアウトライン ボックスを閉じることができるようにするあなたが求めたものとはまったく異なりますが、参考までに、次のようなことができます。
Names Default To Here( 1 );
nw = New Window( "ex",
obMain = Outline Box( "Main",
Outline Box( "1", V List Box() ),
Outline Box( "2", V List Box() )
)
);
obMain << setMenuScript(
{
"Close All",
obs = nw << xpath( "//OutlineBox");
for(i=1, i<=NItems(obs), i++, obs[i] << close(1)),
"Open All",
obs = nw << xpath( "//OutlineBox");
for(i=1, i<=NItems(obs), i++, obs[i] << close(0));
}
);
[ヘルプ] > [スクリプト インデックス] の [コントロール キー] を見ると、修飾キーはグラフィック ボックスを対象としているように見えます。