08-30-2013 03:31 PM
It is currently possible to change the value of a control in an array of clusters using the approach illustrated in the VI available at this link:
http://zone.ni.com/devzone/cda/epd/p/id/4951
The problem is that this approach DOES NOT WORK for the "tip strip" property, although logically it should do. The attached VI demonstates the issue.
Try simply changing the property from "Value" to "Tip Strip" and you will observe that suddenly the same implementation affects the tip strips of that control in ALL array elements, instead of just in the selected array element.
This looks more like a bug to me and it is stopping us from implementing a VERY IMPORTANT FEATURE in arrays of clusters.
Normally if a string value which is displayed in an array of clusters exceeds the physical length of the indicator within which it is displayed (i.e. does not fit), you need a pop up a tip strip displaying the full string when the cursor is floated over that specific string-control element.
Such functionality is already built-in with multicolumn listbox tables because it is essential... But what about arrays of clusters. Not only such functionality is not built into such data structures, but by the looks of it it is even impossible to implement with a bit of code (for the reason described above).
In conclusion, a built in feature is desirable which can be enabled through the properties window of an array to cause the array to pop up tip strips showing the full string value contained in string controls (contained within array clusters) which are too small for the entire string value to be visible.
08-30-2013 03:38 PM
@Teo7 wrote:
It is currently possible to change the value of a control in an array of clusters using the approach illustrated in the VI available at this link:
http://zone.ni.com/devzone/cda/epd/p/id/4951
The problem is that this approach DOES NOT WORK for the "tip strip" property, although logically it should do. The attached VI demonstates the issue.
Try simply changing the property from "Value" to "Tip Strip" and you will observe that suddenly the same implementation affects the tip strips of that control in ALL array elements, instead of just in the selected array element.
This looks more like a bug to me and it is stopping us from implementing a VERY IMPORTANT FEATURE in arrays of clusters.
Normally if a string value which is displayed in an array of clusters exceeds the physical length of the indicator within which it is displayed (i.e. does not fit), you need a pop up a tip strip displaying the full string when the cursor is floated over that specific string-control element.
Such functionality is already built-in with multicolumn listbox tables because it is essential... But what about arrays of clusters. Not only such functionality is not built into such data structures, but by the looks of it it is even impossible to implement with a bit of code (for the reason described above).
In conclusion, a built in feature is desirable which can be enabled through the properties window of an array to cause the array to pop up tip strips showing the full string value contained in string controls (contained within array clusters) which are too small for the entire string value to be visible.
In short, this is expected behavior.
09-11-2013 08:50 AM
Sure but why does it have to be like this?
Would it not be useful to at least have a feature enabled through the properties window of an array to pop up tip strips showing the full string value contained in string controls (contained within array clusters) when the string controls are too small for the entire string value to be visible?
Alternatively would it not be useful to be able to programatically change the property of specific controls in an array of clusters?
Why the current limitations?
09-11-2013 10:02 AM
@Theo_K wrote:
Sure but why does it have to be like this?
Would it not be useful to at least have a feature enabled through the properties window of an array to pop up tip strips showing the full string value contained in string controls (contained within array clusters) when the string controls are too small for the entire string value to be visible?
Alternatively would it not be useful to be able to programatically change the property of specific controls in an array of clusters?
Why the current limitations?
I answered the part about whether it is a bug or not; unfortunately, I can't answer your other questions. 😞
09-11-2013 10:33 AM
Dear Theo,
You may find this example helpful:
Billko is correct in saying that you are cannot change the properties of elements with in the array but the above example maybe helpful as a work around.
Kind Regards,
09-11-2013 07:20 PM
OK thanks Bill
09-11-2013 08:00 PM
Hi Sinead,
The code you have attached does not do anything differently than I have already described.
Same as the code I attached, it modifies the property of controls in the cluster, but it does that for all cluster elements in the array rather than just for the indexed" cluster element.
...And that is precisely the problem!
I appreciate that it might be very difficult for NI to implement my suggestion due to various constraints; nevertheless I believe that this improvement / feature which I am suggesting is a valid one and very useful.
That's the ability to modify the property of a specific control, in a specific cluster in an array of clusters, similarly to the way you can currently modify the "value" of such an element.
Even common sense dictates that when you are making a change to one specific thing, that should not affect anything but the thing you are trying to change.
Thanks,
Theo
09-11-2013 08:08 PM
No. It can't be done because arrays don't work that array.
Arrays consist of elements that all have the same properties. The only difference between the elements of the array are their value. Since tip strip is a property, that property is shared among all elements.