03-31-2021 07:36 PM
Hi folks,
While customizing our own version of the full-featured LabVIEW UI, I noticed that the right-hand border of the call stack ListBox object cannot be dragged at runtime. This is true even in the compiled version of the LabVIEW full-featured UI that ships with TestStand 2020.
The BorderDraggedEventEnabled property is true, the ActiveX container is "enabled" as a LabVIEW control... I've tried lots of combinations and I can't get this to work.
Has anyone run into this and found a fix for this?
Thanks,
Mr. Jim
03-31-2021 08:03 PM
If you get your mouse just right on the bottom right corner then it should drag... but to confirm what you are seeing, I cannot grab the right side and drag. If I move the threads one out of the way I can drag the right border.
There's a border dragged callback event being registered for the stack control. I wonder if there's a bug in there? I haven't dove too deep into it.
04-01-2021 09:37 AM
Thanks Jiggawax.
I haven't even been able to get that callback to fire, and honestly I haven't been able to get the mouse cursor "just right." You must have the magic touch!
I tried moving the threads listbox as well, but no luck. Thanks for confirming it's not just me, though.
I'm sure there's got to be a hack workaround but I guess like most people I have to assess whether it's worth my time.
04-02-2021 12:16 AM
Here's what I get:
You can see how my mouse changes to the double arrow thing and I can move it. I know that LabVIEW has a Z layer where objects are stacked on top of each other. Maybe try bringing it to the front? Select the object and on the reorder dropdown choose Bring to Front.
What version of LabVIEW? Mine is 32 bit 2019.
04-08-2021 07:43 AM - edited 04-08-2021 07:44 AM
Hey there Jiggawax,
I'll tell you what, actually I played around with the z order and just about everything else I could think of before I posted my question as I'd been having no luck. I even fiddled with the dimensions in the resizing algorithm so that there was a giant gap between the two objects with no overlap. Alas, I could not get the cursor to change for resizing, even on that lower corner pixel.
I'm on TestStand / LabVIEW 2020 x64, and this is a custom RTOI that was saved for 2020 from 2017 x86.
What I finally ended up doing, which was probably a bit too obsessive on my part, was to code it up as part of the LabVIEW code. Meaning, I track the mouse down coordinates for the execution page only, and determine if the user clicked on the border, and then I track the mouse up event, calculating the horizontal delta. Then I call the resize callback directly instead of as a callaback. It was a lot of effort for such a small thing, but it mostly works except for the mouse cursor changing reliably. I tried setting the mouse cursor by using a property (or was it a method?) of the listbox objects, but absolutely nothing happened, so I ended up hacking that in LabVIEW as well. End result: the user can resize it by dragging, but the appearance doesn't change until the drag has completed. Better than nothing, I guess.
I'll be curious if anyone else ever runs into this or if it's a quirk somehow with my setup.