I am trying to update a progress bar values like the max, min values and other settings but from within a sub vi.
How do I modify my code to get the changes within the subvi to show on the top main panel?
Thanks for your feedback and help!
Solved! Go to Solution.
Wire the control reference to your property node in the subVI. If you want to have the slider on both front panels you would need a second property node with one for the subVIs slider and one for the main's slider.
With thta said, I prefer to keep the UIs of my application separate from the business logic of teh application. I use messages to pass status information and updates from the business logic to the UI processing. The UI is free to do whatever it wants with the updates. The business logic doesn't care what the UI is doing. This makes teh code more modular and allows for more reuse of code. It also allows you to change the UI without having to modify the core business logic. This can allow things like different application skins, detailed views along with summary views.
I like your suggestion with the UI business logic and application. Can you share an example of modifying a case via my code submission? Thanks!
I would suggest looking at the example projects for the Channeled Message handler, Queued Message Handler or Actor framework. There is a nice example for a actor framework model-view-controller architecture here: https://forums.ni.com/t5/Actor-Framework-Discussions/Implement-the-Model-View-Controller-MVC-archite....
I am not sure of your skill level with LabVIEW so some of these may be a bit advanced.
I am not sure how to add the 2nd reference to show up on the top panel. I already have one for the subVI, I am not sure how to carry out your suggestion for the main VI.
I created the property node by right clicking on the reference terminal inside the xase statement. You can also simply drop a property node on the block diagram and then wire the slider reference to it.