LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Help to create a Main VI

Hello,

I need to create a Main VI that contains 3 items, as per the attached image.
Top menu bar: In this bar a menu dropdown should appear with the options that the software will have.
Center: In this large rectangle, you should call the subvis with the options selected in the top menu.
Bottom bar: This will be the software's message and warning center. All the messages that the software should display to the user will be in this bar. You should communicate with the top bar and the subvis.

leandrofeder_1-1720459883850.png

 

The three items mentioned should work at all times in the software. The top menu can be activated at any time, the center of the screen should run the subvi and allow you to control them, and the message bar should receive the messages that the subvis and top bar will emit.

What's the best way to do that beautiful and otimized?

0 Kudos
Message 1 of 4
(280 Views)

Each of those parts can be its own process (by which I mean a separate loop running in its own VI). You can insert them into the main VI using subpanels.

0 Kudos
Message 2 of 4
(278 Views)

Hello Leandro,

 

Edit: Adding to what said.

 

You will have to create custom controls  to match your concept's design but you can achieve results similar to what you have shown. Please check the VI and some comments in it.

A quick, crude example for similar layout: (Run the VI to see toolbar go away as shown).

Xonmyth_1-1720462015315.png

You can make string controls transparent to only show text.Overlay a logo image resized to your needs, etc .

0 Kudos
Message 3 of 4
(249 Views)

I would use the LabVIEW run-time menu option (Edit > Runtime Menu...) to do the top menu.  It replaces the familiar Windows menu with custom choices while the VI is running.  Drop a sub-panel in the middle set to re-size with the VI.  Put a horizontal splitter locked to the bottom with a text indicator or listbox (if you need scrolling) in it.

 

Cosmetically, it's easy. Although you won't have the fancy option like you would have with C# and WPF, LabVIEW will get the job done and look OK.

 

The problem will be picking a code architecture that will remain responsive, no matter what VI is running in the sub-panel.  That will depend on your specific needs which you didn't provide.  You will definitely need some messaging between the UI segments.  Simple queues that store the current status and a stack of menu commands might work.  For more complexity and the ability to extend the code, I would look into the Actor Framework. 

LabVIEW Pro Dev & Measurement Studio Pro (VS Pro) 2019
0 Kudos
Message 4 of 4
(234 Views)