LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

What is the best way to implement a menu ring?

Hello,
 
   I would like suggestions and/or comments about the "best way" (if there is one) to implement a menu ring. I want to be able to present numerous options to the users to select the operation that they need to perform, so my first thought was a menu ring. What I found out was that a "mouse up" event for a menu ring in a event structure will not work. A "value change" event will indicate when the value has changed, but what happens if the currently display item in the menu ring is what the user wants, therefore the "value change" event will not occur.
  So I have decided to have the user press a "boolean button" when the contents of the menu ring contain the operation that they want to perform. This results in the user performing 2 actions instead of one to perform the testing. It would be nice to have the user just select the operation from the list and be able to use the "mouse up" event  when the user have selected the desired operation.
 
Regards,
 
Kaspar 
Regards,


Kaspar
0 Kudos
Message 1 of 5
(3,397 Views)
Personally, I would rather have a separate button to start the operation. It's very easy to accidentally pick the wrong option from a menu ring, and there could be other options the user might need to select before pressing that 'go' button. Of course I can't speak for your application, but having the extra button really hasn't ever made a difference to me in any programs I've used or written.

As far as getting it to work the way you want, some people have used an invisible listbox below a disabled ring. Use a mouse event on the ring to make the listbox visible. Then when you click an item from the listbox, you can use a mouse up event to determine what element was selected before making it invisible again. This has been discussed on the forums, there may be some examples if you search around.

Message Edited by Marc A on 10-03-2007 08:51 AM

Message 2 of 5
(3,381 Views)
I never actually did it, so I thought I would give it a try. It's not too much work to implement. You just need to put your code that starts the selected process in the "Listbox": Mouse Up event.

Saved for 8.2
Message 3 of 5
(3,364 Views)
Oh, even better. This highlights each item in the listbox as you roll over it so it looks more like the regular dropdown from a menu ring.
Message 4 of 5
(3,360 Views)
There is no "best" way to implement a menu ring. A menu ring is a menu ring. It works the way it's designed to work. Smiley Wink

I have a more fundamental question: Why would you need to do anything if the value doesn't change? In other words, if the user pulls down the menu and selects the menu item already selected, the value doesn't change, so why do you need to bother?
0 Kudos
Message 5 of 5
(3,346 Views)