LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Display the indicator bigger when the user clicks on it

I am measuring the pressure at different points in the system (three chambers in the series). I have main VI working and I have many indicators on the front panel of my main.

If it is possible how can I make the program so that the indicator that the user clicks on becomes larger with respect to the background so that the user can watch the level of the pressure from the bigger distance.
Are there any tricks that can be done with maybe property nodes or something else?

Any help will be appreciated.

Pedja
0 Kudos
Message 1 of 9
(2,927 Views)
> If it is possible how can I make the program so that the indicator
> that the user clicks on becomes larger with respect to the background
> so that the user can watch the level of the pressure from the bigger
> distance.
> Are there any tricks that can be done with maybe property nodes or
> something else?
>

You have lots of tools for making things larger, but I'd say the tougher
decision is what happens in the UI so that it doesn't cover up too many
other items.

If you have a portion of your panel that will become a magnified view of
your object, or a floating window that will magnify, that gives the user
the ability to see and click on them when they become more important
than the one currently magnified.

Anyway, your options are either to gro
w the object using the property
node. Not that there is a base size property that is read only, then
most objects have a more specific property for growing them. Some are
based on pixels, some on rows, etc. The other option is to have small
and large controls and show the large when clicked upon. You really
only need one large control of each type (slider or meter or readout)
and you can customize its other properties like color and name just
before showing to fit it to the thing clicked upon.

Greg McKaskle
0 Kudos
Message 2 of 9
(2,927 Views)
Yes, sometimes there is a need to e.g. adjust some hardware across the room while observing an indicator.

I don't like the idea to mess with the front panel layout at runtime, there are too many limitations. A suggestion would be to open a floating window containing the interesting value. I have attached a simple example. Run the Enlarge Demo, then clicking on any of the three indicators will open a magnified panel for that indicator as floating window. (The example is pretty rough, but shows the idea. A final version would need things such as a stop button ;-). It should also be designed such that the enlarged panel does not block the main event structure.). Enjoy!
0 Kudos
Message 3 of 9
(2,927 Views)
This is very neat.
It is exactly what I was asked to do.
I have noticed that it displays one indicator at the time.
Now I just have to understand better how it works so that I can modify it to enlarge 1 or more indicators at the time.

Thanks a lot,
Pedja
0 Kudos
Message 4 of 9
(2,927 Views)
I would like to ask you two questions.

The first thing that I wanted to ask is how to modify these VIs so that the user is able to click on 1 or more indicators and they all pop up in the bigger size and stay there. I noticed that in order to enlarge one of the numerics you have to close the previous one.
How would the enlarge VI look like so that there can be many indicators enlarged at the same time?

2) The second thing I wanted to be sure about it stopping the loops inside of subVIs from the main VI.
I attached the VIs I am working on and I have already managed to build it so that the subVI stops when I press stop in the main VI. And as you can see I am using global boolean stop. I just wanted to know if there is any other method
that you can use to pass the values between main and subVI?

Thanks for your time. I appreciate it a lot.

Pedja

p.s. I did not attach Stop.vi (global variable VI)
Download All
0 Kudos
Message 5 of 9
(2,927 Views)
For the first question, you probably should create a seperate subVI for each indicator.

About (2). There are many ways to stop the loops in the subVIs (You seem to use a global variable). You could just use the numeric itself and test for a value that never can occur during normal runs (e.g. NaN, -Inf, or Inf, etc.), then, when you stop the main VI just write these to all the indicators and everything else will stop. (This can be useful during development. Once this VI is deployed in a production environment, stopping is probably not needed, just a sane shutdown of the entire application.)
0 Kudos
Message 6 of 9
(2,927 Views)
About question 1:

I will have up to 10 or more indicators on the final fron panel of my main VI. I thought of making subVI for each indicator but would that be too many subVIs.
I guess they are not that big so it doesn't take much memory.
Regarding this topic of making subVIs can you remind what is the way of adding all those subVIs that my application calls into one library?
Is that done during compiling into the actual application and then you just select all subVIs?...something like that I think.

Thanks for everything.

Regards,
Pedja
0 Kudos
Message 7 of 9
(2,927 Views)
Hi,

I am trying to use your idea about enlarging indicator and I am having problems with wiring the control reference to the BigPanel.vi inside of "Conv1 MG1: Mouse Down" case.
I attached the main VI and BigPanel.vi.
I put them together in one shared library (System.llb)and that didn't help.

Can you tell me what is going on?

thanks,
Pedja
0 Kudos
Message 8 of 9
(2,927 Views)
JUST IGNORE MY LAST POST.

Pedja
0 Kudos
Message 9 of 9
(2,927 Views)