fit multiple display boxes to windowHello,
I made a script that arranges multiple graphs in a tree of three levels of nested tab boxes. After sorting my initial issue of the script crashing JMP on every single run (I was sending a display box into the wrong type of box I think), I am now trying to polish it.
What I would like to do is to have all my graphs fit to the size of the window. I have noticed that for some reason, I can't resize graphs manually in my final window. As the various graphs get displayed in the window (<
Is there an easy way to set the graphs/ the display boxes so that everything automatically resizes to the window size ?
Mass CustomizationRe: fit multiple display boxes to windowHi @danschikore ,
thanks for the information. I have tried using Splitter box and that made things better. It's, not yet the perfetcly polished script that I would like to deliver but alas I am too short on time to perfect it.
For information, here is the model of script I used :
win = New Window( "My tabbed graphs",
Data Filter Context Box(
V Splitter Box(
Size( 1800, 1000 ),
<<SIZES></SIZES>
Later on in the script, I have a loop that generates graphs from a list of parameters. It then pushes it to the main window with the append message:
tpb2 = Tab Page Box( Title( My_List[i] ), Tb2 = Tab Box() );
tb2<<APPEND></APPEND>
Originally I used V List Box instead of V Splitter box. I also fiddled with the graphs sizes in my_custom_graph_function, which is essentially just a graph builder function.
Re: fit multiple display boxes to windowFirst, please do send the crashing script to Tech Support - even when the script is not doing things the recommended way, we would like to fix any mishandling that leads to a crash.
Stretchable displays have many considerations - it would be helpful to know how you are creating the stretchable content. Platforms like Graph Builder have built-in settings like Fit To Window("On"), while for custom content you may be using something like frameBox<
Even when content is stretchable, the window will still measure all of the boxes and size the window large enough to contain everything (if possible, otherwise it may have to scroll). When adding stretchable content you may want to set the initial size to something small if you don't want the new object to cause a change in the window size. You may also find it useful to call <
Another thing that you may want to look into is the use of Splitter Box. Splitter Box can help to keep stretching in sync between multiple stretchable objects, and lets you define the initial size of the content. This is counter to the comment above about the window growing large enough to contain the content - Splitter is more forceful about maintaining a size and forcing the child boxes to adjust.
Names Default To Here(1);
dt=Open("$SAMPLE_DATA/Big Class.jmp");
New Window( "stretch",
H Splitter Box(Size(900,600),
<<SIZES></SIZES>