在 JSL 中調整面板框大小JMP 社群您好,
我正在創建一個生成儀表板的加載項。 儀表板有一個面板框,其中包含可供選擇的選項清單。 指定面板框的程式碼部分如下所示(我試圖透過註釋與當前問題無關的行來使其盡可能簡單)。 運行程式碼時,我得到的面板如下所示:

這太寬了,我想控制它的大小,但我不知道如何控制。 我嘗試過“<< Set Size( width, height )” 和“<< Frame Size( width, height )”,但它們不起作用,儘管我不確定我是否正確使用了它們,或者它們是否有效是正確的開始訊息。 你能給我建議嗎?
先感謝您!
艾哈邁德
win = Platform(
dt,
H List Box(
Panel Box( "Select option:",
plist = List Box(
points,
max selected( 1 ),
chosen = plist << get selected;
if( chosen[1] != "",
// Some simple code that runs if no option is selected.
);
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
)
)
)
);
大規模客製化回覆:在 JSL 中調整面板框大小我剛剛意識到外框可以與內框一起縮小的程度受到標題(“選擇選項:”)的限制:標題越小,它與內框一起縮小的程度就越大。 不用說,刪除標題就可以解決問題。
感謝您的幫助和有用的鏈接, @jthi !
回覆:在 JSL 中調整面板框大小間隔盒可以做一些非常好的事情。 請參閱下面的連結(尤其是帶有間隔盒的第 10 和 11 部分):
13 個有用(而且幸運)的 JMP 腳本編寫技巧
編輯:
另請參閱 2019 年精彩的探索高峰會演講使用 JSL 進行程式設計的結構化方法,用於建立現實世界中的可擴展應用程式。與此相關的主題從 22:00 分鐘開始,但我建議查看整個簡報。
回覆:在 JSL 中調整面板框大小謝謝@jthi !
只是為了其他人的利益,“plist << set width( x );”僅當我將其添加到應用程式程式碼的“Initialize()”部分時才對我有用。
不過,作為我最初問題的延伸,如果您再次查看上面“選擇選項:”框的圖片,您會注意到它由外部框和內部框組成。 您建議的解決方案可以很好地控制內部,但僅此而已。 雖然外部會隨著內部拉伸,但超過某一點後它不會隨之收縮。 我嘗試標記“Panel Box();”和“H列錶框();”然後對它們應用“<< set width():”並以相同的方式“獲勝”,但無濟於事。 任何建議,將不勝感激。
再次感謝!
艾哈邁德回覆:在 JSL 中調整面板框大小調整面板框中內容的大小
plist << Set Width(50)
完整範例:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Reliability/TurbineEngineDesign1.jmp");
win = new window("", Platform(
dt,
H List Box(
Panel Box( "Select option:",
plist = List Box(
{"single", "double", "triple"},
max selected( 1 ),
chosen = plist << get selected;
if( chosen[1] != "",
// Some simple code that runs if no option is selected.
);
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
// Some simple code that runs if option is selected.
)
)
)
));
wait(2);
plist << set width(50);