在 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);