03-19-2021 01:00 PM
I have been given this GUI and told it needs to be resized to fit on a bigger display.
My initial approach has been to make a copy of the top level VI and do all the resize work there.
However the project makes use of Strict Type Defs for some of the front panel controls. You can't resize these on the front panel. Obviously, if I make a change to the strict type def it will also resize on the original GUI.
To make matters worse, some of the strict type defs are booleans with custom decals. These will also need to be resized and they also will differ from the original to the resized GUI.
I could just make two different type defs, one for the old GUI and one for the new. I could do away with having these as type defs. (I presume the previous dev made them type defs for a reason and that person is not available for questions and I don't know the reason. So I am not sure what unintended consequences that may have.)
Anyway, are there other options that don't involve two sets of type defs for two different display sizes?
Thanks!
03-23-2021 06:16 AM
Have you tried the "Maintain proportions of windows...." You can apply that to the original VI and be done with it. I think.
Andrés
03-24-2021 04:24 AM
Depending on the contents of your front panel, you might find splitters and/or subpanels useful.
The use of splitters can allow you to separate out GUI elements and have some section more easily resize, for example a graph in the center of the panel can be set to fit to panel and then the outer edges can be fixed using the splitters at a constant size, or can resize proportionally.
By splitting the panel into multiple panes, it becomes a bit more likely that the "fit to pane" or "scale with pane" options will do what you want.
For the strict typedefs, as you've found, you can't resize them - so the question becomes, do they need to resize? What are they? Can they remain a fixed size and have other things take up more space, or do they need to also change size.
If you want to have them scale, you'll need to either remove the strictness, or create copies for your new GUI, but without more details it's hard to guess how good an idea those options are.