11-01-2011 11:44 AM
I'm building an application that will have numerous screens/front panels. I'm currently in the design phase as you can probably tell from this question.
Say, for example, I have a start-up screen with a few buttons and depending which button is pressed I open up a new screen/front panel. This new screen would then have a few more buttons which would potentially open up more screens while closing each screen before it.
I've dabbled with open frontpanel when called but I'd like to know if this would be a rather messy solution for what I'm trying to achieve? I could alternatively use tab controls I guess...
I'd appreciate thoughts from experience developers on this issue
Strokes
11-01-2011 11:52 AM
Given you description, I would dump the idea of opening new windows altogether and go with a single VI with a subpanel on its front-panel - tastes great and is less filling...
MIke...
PS: if you aren't over 30 or don't live in the US, sorry in advance for the old beer commercial reference... Let's just say subpanels work really well and are a great way of implementing complex interfaces like you are describing.
11-01-2011 11:57 AM
First, please use the term "window" when you mean window.
Second, do you HAVE to "close each window before" ?
Since execution control passes from one window to another (when called as a subVI), you could just keep the parents around while executing the child.
Or here's another way: I have a project where the main screen opens up a single child.
This child is a state machine, sith a simple semi-transparent panel. This shields the main from mouse clicks between states. Each state does something, possibly brings up a child window. When that child is dismissed, the state machine proceeds to the next state (or in case of an error, to a non-sequential state).
At some points, there might be four windows on screen: the main, which is completely covered by the state machine, which is almost completely covered by the child windows, which might have a custom dialog in front of it. Make sure you set the MODAL property of each window, and you're all set.
That meets your requirement of closing each one before advancing the next one.
Blog for (mostly LabVIEW) programmers: Tips And Tricks
11-01-2011 12:20 PM
Here is a JING showing what I mean: JING
Blog for (mostly LabVIEW) programmers: Tips And Tricks
11-01-2011 03:21 PM
@mikeporter wrote:
Given you description, I would dump the idea of opening new windows altogether and go with a single VI with a subpanel on its front-panel - tastes great and is less filling...
MIke...
PS: if you aren't over 30 or don't live in the US, sorry in advance for the old beer commercial reference... Let's just say subpanels work really well and are a great way of implementing complex interfaces like you are describing.
Yes I think subpanels are what I'm looking for. Would I be right in saying that they would give me the effect of having multiple windows within the same front panel?
I've never used them before but am eager to learn new tricks and techniques. Is there any simple example available or that someone could make up very quickly that would give me a glimpse into using them?
Thanks
11-01-2011 03:38 PM
11-01-2011 03:45 PM
There are several good examples in this nugget
11-01-2011 04:52 PM
@Jeff Bohrer wrote:
There are several good examples in this nugget
I want to stay away from XControls but thanks for the suggestion
11-14-2011 01:40 AM
Depending on the amount of screens needed and dynamic preferrence i'd say Tab control or sub-vi panel.
The tab control is quick and easy and you can paint it transparent making for several panel setups.
Sub-vi panel requires a little more coding but is very flexible and expandable.
/Y