JMP对话框中的网格控制?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />嗨伙计,
有没有人想出如何在JMP对话框中进行某种网格控制?类似于VB中的SCgrid?我想显示一个可滚动的表格,其中包含可点击的控件。
谢谢,
彼得
Re:JMP对话框中的网格控制?很酷!!!
Re:JMP对话框中的网格控制?这是一种替代方法,使用填充BorderBoxes,MouseBoxes和TextBoxes的LineupBox,其作用类似于表格。 MouseBox可以提供可点击的控件,BorderBox可以提供对表格单元格进行着色的功能。
Re:JMP对话框中的网格控制?非常感谢MS!我拿了你的代码并稍微改了一下,以便每个按钮都是“Go”图标:
DT = 打开 ( “$ sample_data \ Car Physical Data.jmp” ) ;
当前数据表 ( DT ) ;
model_list = : 模型 << 得到价值 ;
COUNTRY_LIST = : 国家 << 得到价值 ;
TYPE_LIST = : 类型 << 得到价值 ;
weight_list = : 重量 << 得到价值 ;
turn_list = : 转圈 << 得到价值 ;
disp_list = : 移位 << 得到价值 ;
horse_list = : 马力 << 得到价值 ;
gas_list = : 气罐尺寸 << 得到价值 ;
action_list = {} ;
bb_text = “” ;
对于 ( 一世 = 1 ,一世 <= NROWS ( DT ) ,一世 ++,
公元前 = “B” || 烧焦 ( 一世 ) ;
bb_text = bb_text || 公元前 || “=按钮框(\!”\!“,打印(\!”“) || 公元前 || “\!”); ),“ ;
) ;
col_box_expr = “col box(\!”Action \!“,” || bb_text || “)” ;
新窗户 ( “汽车” ,
结核病 = 表盒 (
EVAL ( 解析 ( col_box_expr )) ,
String Col Box ( “模型” , model_list ) ,
String Col Box ( “国家” , COUNTRY_LIST ) ,
String Col Box ( “类型” , TYPE_LIST ) ,
数字Col Box ( “重量” , weight_list ) ,
剧情箱 ( “” , weight_list ) ,
数字Col Box ( “转动圈” , turn_list ) ,
数字Col Box ( “移位” , disp_list ) ,
数字Col Box ( “马力” , horse_list ) ,
数字Col Box ( “气罐尺寸” , gas_list ) ,
剧情箱 ( “” , gas_list ) ,
)
) ;
结核病 << 设置Scrollable ( 25 , 0 ) ;
结核病 << 桌子风格 ( 斜 ) ;
对于 ( 一世 = 1 ,一世 <= NROWS ( DT ) ,一世 ++,
公元前 = “B” || 烧焦 ( 一世 ) ;
button_expr = 公元前 || “<< set icon(\!”Go \!“)” ;
EVAL ( 解析 ( button_expr )) ;
) ;
很酷的结果。 单击按钮可显示按下了哪个按钮。

Re:JMP对话框中的网格控制?Col Box在其参数中与Outline Box类似。 您可以建立类似于Peter所做的列表:
action_col = col box(“Action”);
for(i = 1,i <= nrows(dt),i ++,
bb_text =“action_col << append(按钮框(\!”打开\!“,打印(i)))”;
的eval(解析(bb_text));
);
现在您有了可以添加到表中的列。
Re:JMP对话框中的网格控制?只是 action_list [1] 有效,但不是整个清单。因此,Col Box()似乎无法解析显示框列表,这通常意味着必须制作和解析一个巨大的表达式字符串。
DT = 打开 ( “$ sample_data \ Car Physical Data.jmp” ) ;
当前数据表 ( DT ) ;
model_list = : 模型 << 得到价值 ;
COUNTRY_LIST = : 国家 << 得到价值 ;
TYPE_LIST = : 类型 << 得到价值 ;
weight_list = : 重量 << 得到价值 ;
turn_list = : 转圈 << 得到价值 ;
disp_list = : 移位 << 得到价值 ;
horse_list = : 马力 << 得到价值 ;
gas_list = : 气罐尺寸 << 得到价值 ;
bb_text = “按钮框(\!”打开\!“,打印(1))” ;;
对于 ( 一世 = 2 ,一世 <= NROWS ( DT ) ,一世 ++,
bb_text = bb_text || “,” || 烧焦 ( 替代 ( nameexpr ( 按钮框 ( “打开” ,打印 ( EXPR ( 一世 )))) , EXPR ( 一世 ) ,一世 )) ;
) ;
col_box = “col box(\!”Action \!“,” || bb_text || “)” ;
新窗户 ( “汽车” ,
结核病 = 表盒 (
EVAL ( 解析 ( col_box )) ,
String Col Box ( “模型” , model_list ) ,
String Col Box ( “国家” , COUNTRY_LIST ) ,
String Col Box ( “类型” , TYPE_LIST ) ,
数字Col Box ( “重量” , weight_list ) ,
剧情箱 ( “” , weight_list ) ,
数字Col Box ( “转动圈” , turn_list ) ,
数字Col Box ( “移位” , disp_list ) ,
数字Col Box ( “马力” , horse_list ) ,
数字Col Box ( “气罐尺寸” , gas_list ) ,
剧情箱 ( “” , gas_list ) ,
)
) ;
结核病 << 设置Scrollable ( 25 , 0 ) ;
结核病 << 桌子风格 ( 斜 ) ;
Re:JMP对话框中的网格控制?差不多了。 不知道col box,除了在Help> Scripting Index中简要提及之外,没有任何记录。 也许有人可以帮助我让这个例子起作用:
DT = 打开 ( “$ sample_data \ Car Physical Data.jmp” ) ;
当前数据表 ( DT ) ;
model_list = : 模型 << 得到价值 ;
COUNTRY_LIST = : 国家 << 得到价值 ;
TYPE_LIST = : 类型 << 得到价值 ;
weight_list = : 重量 << 得到价值 ;
turn_list = : 转圈 << 得到价值 ;
disp_list = : 移位 << 得到价值 ;
horse_list = : 马力 << 得到价值 ;
gas_list = : 气罐尺寸 << 得到价值 ;
action_list = {} ;
对于 ( 一世 = 1 ,一世 <= NROWS ( DT ) ,一世 ++,
bb_text = “action_list =按钮框(\!“打开\!”,打印(i))“ ;
EVAL ( 解析 ( bb_text )) ;
) ;
新窗户 ( “汽车” ,
结核病 = 表盒 (
col盒子 ( “行动” , action_list ) ,
String Col Box ( “模型” , model_list ) ,
String Col Box ( “国家” , COUNTRY_LIST ) ,
String Col Box ( “类型” , TYPE_LIST ) ,
数字Col Box ( “重量” , weight_list ) ,
剧情箱 ( “” , weight_list ) ,
数字Col Box ( “转动圈” , turn_list ) ,
数字Col Box ( “移位” , disp_list ) ,
数字Col Box ( “马力” , horse_list ) ,
数字Col Box ( “气罐尺寸” , gas_list ) ,
剧情箱 ( “” , gas_list ) ,
)
) ;
结核病 << 设置Scrollable ( 25 , 0 ) ;
结核病 << 桌子风格 ( 斜 ) ;
Re:JMP对话框中的网格控制?在JMP 10中,Table Box有一个Set Scrollable消息和Col Box,它是一个显示表列,其中每一行都是您选择的不同显示框。
我还没试过的另一个选择是在Scroll Box中放置一个Lineup Box。