03-30-2020 01:32 PM
As part of making a dialog for selecting, setting, and rearranging properties in a property node, I found that the scripting property that returns all available properties for an object, which looks like this:
does not return the properties of items in the property list which are references and thus have their own properties, such as the caption, label, and terminal. Below you can see that the Caption property is of type reference, and this property is in the last of available properties, but in its flyout menu, it has a long list of properties of its own. These are not in the AllProps list of the original control.
Manually, you can select these properties, which are displayed in the form refname.property (eg, Label.Text) as seen here:
If you want a list of displayed properties in a property node, there's a property for that, and it will return the displayed property names and unique IDs, including those for the Label.Text property in the node above
Here's the problem. If you use a property ID returned by this function, and that ID it is not in the "AllProps" list, you get error 1077, and the set method does not work.
So, my question is, is it possible to set a property like Label.text programatically?
And if so, the second question is, how can I get a complete list of properties that can be set? (I think that problem I can solve, since I have a reference and can use that to create a property node and get its properties. Gets messy, though.)
Solved! Go to Solution.
03-30-2020 02:27 PM
You can set dotted properties, but it requires a deprecated property to do so. See here:
https://lavag.org/topic/20722-programmatically-set-a-property-item/
That discussion thread also has a link to an Idea Exchange post for retrieving all properties, including dotted properties. I suggest you kudo that Idea Exchange post if you haven't already.
03-31-2020 12:06 PM
Thank you Darren.
09-22-2023 04:06 AM
Hi Darren
Do you know how I can access those brown properties?
09-22-2023 09:13 AM
@Senkaki wrote:
Do you know how I can access those brown properties?
Brown properties/methods are "private", i.e. not supported by NI. You can find out how to enable private properties/methods in LabVIEW with a google search.
09-22-2023 10:01 AM
I have already performed that search.
In fact, I invite you to point out where NI has documented "SuperSecretPrivateSpecialStuff=True" parameter on their pages.
In any case, they have already solved the problem in another thread.
https://forums.ni.com/t5/LabVIEW/Internal-Private-Property-Nodes/m-p/4330447#M1268807
Thanks for your invaluable help,
JonA
09-22-2023 10:19 AM
09-22-2023 10:33 AM
I'm just having a bad day... 🙈
Have a nice weekend guys!