LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Menu Ring update failure - possible bug?

Hi all,

I have a question that appears to be a bug in LabView 7.1. From within my main VI, I created a custom control and saved it as a typedef. That control consisted of a Menu Ring with non-sequential enumerations displayed in hex. After I saved it (definitely as a typedef), I did a right-click and opened it from within the main VI. Then, I added an entry to the menu selection and closed it. I ensured that "Update from typedef" was checked inside of the main VI, however, the new menu selection does NOT show up.

Any ideas?

Thanks,

Jason
0 Kudos
Message 1 of 10
(4,205 Views)
I think this link explains this better than I could...
http://forums.ni.com/ni/board/message?board.id=170&message.id=67054
Message 2 of 10
(4,196 Views)
Thanks, it does appears as if this is a bug in LabView, per those posts. Unfortunately, I CANNOT use a regular enum (which would be nice) because I need to specify non-sequential numbers not starting at '0' for the values. Plus, I need to do it in hex.

Thanks,

Jason
0 Kudos
Message 3 of 10
(4,190 Views)
Hi,

Make it a strict type def. A type def only defines the type of the menu ring. The items in it are dot part of the type.

This is not a bug. Compare it with a string that is a type def. It will behave the same.

Regards,

Wiebe.

"JasonWB" <x@no.email> wrote in message news:183963@exchange.ni.com...
Thanks, it does appears as if this is a bug in LabView, per those posts. Unfortunately, I CANNOT use a regular enum (which would be nice) because I need to specify non-sequential numbers not starting at '0' for the values. Plus, I need to do it in hex.<br><br>Thanks,<br><br>Jason
0 Kudos
Message 4 of 10
(4,174 Views)
I have tried that - it doesn't work. Is there a way to manually force an application to "reload" all of it's controls from the original file?

Thanks,

Jason
0 Kudos
Message 5 of 10
(4,166 Views)
Hi Jason,

Plese re-read what I said in the previous post taht David pointed at.

Here is an example of how to do what I THINK you want.

I wrote an "Enum" converter that will give you the functionality you need.

The Enum strings are non-sequential and you get the hex value selected after the conversion.

By not using a default case in the conversion, the converter VI will break when you add new enum values. Just make sure there is one case for each enum and you are in buisnnes.

This alos picks up the benefit of being able to map more than one selection to the same numeric value. This can not be done with a menu ring.

The icon was also dedited to make it look better on the diagram.

I hope this helps,

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 6 of 10
(4,145 Views)
Please reply if this does not help.

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 7 of 10
(4,142 Views)
Hi Ben,

Thanks for the routine, but unfortunately, it doesn't quite give me the functionality that I need. I need to be able to enter a text field across from a hex value, just like a table. I have attached what I am using.

Jason
0 Kudos
Message 8 of 10
(4,135 Views)
Ok,

Try the attached example.

It includes the hex value in the enum text and parses the type string returned by the flatten to string function.

It relies on the hex value being preceeded by spaces.

I let me know if this gets closer.

Ben
Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
0 Kudos
Message 9 of 10
(4,124 Views)
Hi Ben,

Thanks - that does get a bit closer. I will play around with it a bit to see what I can do. It does seem a bit complicated for what this should do, but it will work.

Thanks,

Jason
0 Kudos
Message 10 of 10
(4,114 Views)