根据选择填充/扩展 UI全部,
我发现这篇文章和示例与我的需求非常相关。 https://community.jmp.com/t5/Discussions/Creating-drop-down-menu-for-interactive-user-input/td-p/17982 . 但是,当我尝试实现/执行此处提供的代码片段时,我看不到预期会发生什么。 我认为这是一个错字,提供的是我编辑过的工作代码。
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
/* Extract a list of unique ages */
Summarize( a = By( :age ) );
Insert Into( a, "<SELECT age="">", 1 );
/* Create a modal dialog */
New Window( "Example",
<<MODAL>", 1 );
cb2 << Set Items( ageNames );
)
)
)
),
/* Print the selected values from both ComboBoxes in the log */
Panel Box( "Select a Name:",
cb2 = Combo Box(
{"</MODAL></SELECT><SELECT name="">"},
<<SETFUNCTION></SETFUNCTION></SELECT>
查看代码并通读它,我希望一旦用户在第一个 Combo Box 中选择了一个年龄,第二个 Combo Box 应该填充具有该年龄的人的姓名。 但是,我看不到原始代码会发生这种情况。 上面的代码修复了它。

这是处理这个问题的最好方法吗?或者还有其他选择吗?
回复:基于选择填充/扩展 UI@txnelson ,
你好吉姆,
即使窗口是模态的,我也可以从其他讨论中获取代码示例。 问题出在最初的讨论中,代码没有对我添加的选择行进行子集化。 但是,我想知道这是否是最好的方法还是有更好的解决方案?
回复:基于选择填充/扩展 UI“模态”窗口不允许您的代码流工作。如果您将窗口更改为非模态窗口,则代码将按照您所描述的那样工作,您希望它工作..我已将其添加到您的脚本中,使其按您想要的方式工作,而不是模式窗口。
Names Default To Here( 1 );
Clear Symbols();
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
/* Extract a list of unique ages */
Summarize( a = By( :age ) );
Insert Into( a, "<SELECT age="">", 1 );
/* Create a modal dialog */
nw = New Window( "Example",
// <<MODAL>", 1 );
cb2 << Set Items( ageNames );
)
)
)
),
/* Print the selected values from both ComboBoxes in the log */
Panel Box( "Select a Name:",
cb2 = Combo Box(
{"</MODAL></SELECT><SELECT name="">"},
<<SETFUNCTION></SETFUNCTION></SELECT>