从报告窗口获取图表生成器大家好,
我有许多已经创建的图表 - 所有一个图表都在一个窗口中。
现在我正在创建一个脚本,它遍历所有打开的图形窗口并更改图形中的一些文本。
我做到了这一点:
wList = Get Window List(Type("Reports"));
For(w = 1, w <= nitems(wList), w++,
Print(wList[w] << Get Window Title());
wList[w] << SendToReport( [...]基本上,一旦有了窗口,我就想访问 Graph Builder 和 SendToReport 功能。
不用说,Window 与 Graph Builder 不同,所以这是行不通的。 如何从拥有窗口到拥有 Graph Builder?
我想像 wList[w] << Get Graph Builder << SendToReport()
我也意识到,在实际创建这些图表的脚本中这样做会容易得多,但由于各种原因,该解决方案只会在未来实施,现在我无法这样做,将不得不使用完成的图表。
先感谢您。
回复:从报告窗口获取 Graph Builder谢谢! 正是我需要的。
作为参考,如果有人想做同样的事情:
wList[w][ScaleBox(n)] << Label Row() 允许您操作轴标签。
wList[w][TextEditBox(n)] << Set Text() 允许您更改头部标题以及轴标题。
wList[w][FrameBox(n)] << DispatchSeg(TextSeg( m ), {Set Text()} 允许您更改图形内的文本框,例如中位数或 N。
奇怪的是,对于实际显示的某些更改(由 Label Row 和 DispatchSeg 设置的更改),您需要在之后发出 Get Text 请求,例如: Print(wList[w][ScaleBox(1)] << Get Text );
可能是因为这不是进行这些文本更改的最佳方式,但这样您就可以像在 Graph Builder 中一样使用代码。 
回复:从报告窗口获取 Graph Builder你很接近......这是一个如何做你想做的事的例子。您只需将各种消息用于输出窗口中的不同对象。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/blood pressure.jmp" );
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :Dose ), Y( :BP 8M ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :Dose ), Y( :BP 12M ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
wList = Get Window List( Type( "Reports" ) );
wList[1][axisbox( 2 )] << Max( 250 );