Jump to content

Recommended Posts

Bon jour, François.

I just downloaded UI Tools 1.3.059 from the LabVIEW Tools Network. The series of VIs that you have provided look really nice, and I can believe that they will solve many "annoying" problems I'm having with UIs (I've got one application, for example, where I need to create a TouchScreen interface using, at various times, round Boolean controls, square Boolean controls, etc., and need to both "right-size" them and place them "nicely" (like evenly spaced, at 1/3 in from the left and 1/3 in from the right for two buttons). Painful, messy code that mostly works (except when it doesn't, and then it's a nightmare to debug). So your routines sound like "just what the doctor ordered".

What I could not find is clear documentation and a manual laying out the "how to use these VIs to solve your problems" steps to take. I did find the examples in the NI Example Finder after I installed the code, but they were a little terse. I'm pretty sure that I can follow (most of) what you've done, but this certainly isn't something I'd want to hand to one of my students, trying to build a more user-friendly application, and say "Here, these will help with your UI efforts" ...

Is there more complete documentation and/or a manual or a "How To" paper on these VIs? If not, would you be willing to work with me to develop such things?

Bob Schor

University of Rochester

Rochester, NY

Link to comment

Hello Bob,

[sorry for the late answer: I was on vacation]

you're right that I should put together a more comprehensive help for these functions.

I'll work on it and come back to you. By the way, version 1.3.0.70 is available on LVTN.

Perhaps in the meantime you can check the implementation I made of the UI Tools addon: Control Class.

There is no more documentation on this toolkit, but it is a more intuitive API specifically created for creating controls. It requires the UI tools to run.

http://lavag.org/files/file/120-ui-tools-addon-control-class/

I'm refactoring this addon to make it available as well on the LVTN shortly, but that's still in the pipeline. I promise to make a better documentation out of this one as well.

Thanks for the feedback.

Link to comment

And here is the first draft. I'll add this version into the next update I post on LVTN.

If this is not what you expected to get, please send me more feedback and I'll happily oblige to give more details.

Putting this up made me think of a few more functions I'd like to feed into this tool... that should fuel my next update with more ideas.

UI Tools Help Document.pdf

  • Like 1
Link to comment
  • 7 months later...

I installed UI tools on my LabView 2012 and made use of the Dialog(Blackened).vi in several places during development.  

 

When I compiled my code, I found that the text message for the dialog box had disappeared.  There are some dots on a line that may be the tops of some ascender strokes.  I was under time pressure, so I went back to standard dialog boxes.  I have attached a screen capture to demonstrate the problem.

 

Is there some setting in the Build procedure that would affect only the message?  The blackened background is preferable because the instrumentation displays tend to be cluttered.

 

If you look at the title bar, you can also see that the text message intended for the main dialog box display seems to have been concatenated to the Window Title.  It does not do this on the uncompiled version.

 

The second attachment shows the implementation code which produced the results shown in attachment one after being compiled.

post-14793-0-25183300-1363388585.jpg

post-14793-0-44500800-1363389360_thumb.j

Edited by wildcatherder
Link to comment
  • 5 months later...
"Main Package Name: UI Tools v1.3.0.70
Package Name with Error: UI Tools v1.3.0.70
Error Message: VIPM could not install the package lava_lib_ui_tools-1.3.0.70 .
Error Code: 8
Error Source: Open/Create/Replace File in ZLIB Read Compressed File__ogtk.vi->VIPM ZLIB Extract File (Optimized).vi->828EB4D32CB95072DF2958D72809E51E->CEF9914F587EE4F76B49993D93059AB9->OGPM Class.lvlib:38AC86238973053DFAD7A7BA9B82677D->OGPM Class.lvlib:D6F18AC72B231EBACC17ED485EA9EBEC->F04184443FB48FC5A48358EB76F6C3D1->VIPM Main Window.vi<APPEND>
C:Program Files (x86)National InstrumentsLabVIEW 2012vi.libLAVAUI ToolsDialogDialogDialog_Blacken__lava_lib_ui_tools.vi
==============="
 
Same error for all previous versions .
Other package installations works fine.
Is there a manual way to install this package?
 
 


"Main Package Name: UI Tools v1.3.0.70
Package Name with Error: UI Tools v1.3.0.70
Error Message: VIPM could not install the package lava_lib_ui_tools-1.3.0.70 .
Error Code: 8
Error Source: Open/Create/Replace File in ZLIB Read Compressed File__ogtk.vi->VIPM ZLIB Extract File (Optimized).vi->828EB4D32CB95072DF2958D72809E51E->CEF9914F587EE4F76B49993D93059AB9->OGPM Class.lvlib:38AC86238973053DFAD7A7BA9B82677D->OGPM Class.lvlib:D6F18AC72B231EBACC17ED485EA9EBEC->F04184443FB48FC5A48358EB76F6C3D1->VIPM Main Window.vi<APPEND>
C:Program Files (x86)National InstrumentsLabVIEW 2012vi.libLAVAUI ToolsDialogDialogDialog_Blacken__lava_lib_ui_tools.vi
==============="
 
Same error for all previous versions .
Other package installations works fine.
Is there a manual way to install this package?
 

 ok, Fixed (Updating for those who will met this error at the future)

The problem was that from some reason there was still some files left without a way to delete them from previous installations. restart the computer , delete them manual fixed the problem..

Link to comment
I installed UI tools on my LabView 2012 and made use of the Dialog(Blackened).vi in several places during development.  

 

When I compiled my code, I found that the text message for the dialog box had disappeared.  There are some dots on a line that may be the tops of some ascender strokes.  I was under time pressure, so I went back to standard dialog boxes.  I have attached a screen capture to demonstrate the problem.

 

Is there some setting in the Build procedure that would affect only the message?  The blackened background is preferable because the instrumentation displays tend to be cluttered.

 

If you look at the title bar, you can also see that the text message intended for the main dialog box display seems to have been concatenated to the Window Title.  It does not do this on the uncompiled version.

 

The second attachment shows the implementation code which produced the results shown in attachment one after being compiled.

 

 

Same Problem for me.

is there a solution fore that ? (b.t.w - that was the bug i was try to fix by reinstalling from the previous post..)

Link to comment
  • 3 weeks later...

I seem to have missed this post too. I am ashamed to admit that it's been more than 6 months since I've read anything on LAVA...

 

I looked at the issue and there is a quick fix: one of the subVI needs a reference to its front panel to be kept opened to calculate a string length. This subVI has its panel loaded in memory at edit time, but the FP is stripped when compiled into an EXE. Therefore, the reference to front panel is invalid.

 

In the meantime, here is the quick fix instructions:

- Search for the VI named "Calculate Optimal Height__lava_lib_ui_tools.vi" located under "<LabVIEW>/vi.lib/LAVA/UI Tools/Dialog/Dialog" folder.

- Add a reference to an element on the front panel. (here, I created a static reference for the error cluster)

 

09.04.2013-23.33.png

 

 

 

I can't offer a new package at this time without upgrading the code from 8.6 to 2012 (new computer, didn't reinstall older versions). I'll see to get my hands on an older version of LV for my computer and repackage it with the fix.

Link to comment
  • 2 years later...
  • 6 months later...

Francois,

Thanks for making a great tool!  I am having an issue with the two button dialog.  I first noticed the issue in revision 1.4.0.73.  Prior to that we were using 1.3.0.70 without issue.

My code is shown in a screenshot.  It is just a simple creation of a two button dialog. <image1>

The first time I run it when I open the program the text drops low and covers the buttons so the buttons cannot even be pressed because it selects the text instead. <image2>
If I use tab to select the button and press enter the program will finish appropriately.  When I run it again (without changing any code) the text shifts up to a more reasonable location. <image3> However, in both cases the buttons are a bit low & partially off the screen.  In addition, the text has a scroll bar even though there is more room on the screen to fit the text.

If I downgrade to 1.3.0.70 everything shows up fine <image4>

I have verified this issue on 3 separate computers and on LV 2013 64-bit, LV 2014 32-bit, LV 2014 64-bit, LV 2015 64-bit, LV 2016 32-bit, and LV 2016 64-bit.  For now we are going to just downgrade, but any suggestions about potential fixes or what in our environments that may be causing this would be greatly appreciated.

Thanks!

Robb

Image1.png

Image2.png

Image3.png

Image4.png

two button dialog issue.vi

Link to comment

OK, I found the problem.

The Two Button Dialog box does not initialize the excluded references before computing the text position. To correctly compute the position, one needs to exclude the text indicator so that the rest of the components are aligned properly. 

A quick fix while I rebuild and publish the package is to add the string reference with "Set Exclusions.vi" in the Init case of "Dialog_TwoButtons.lvclass:Dialog Box.vi".

(Edit: Actually, the Set Exclusion node needs to be the first called... as opposed to the image below.)

2017-03-13_23-03-54.png

Edited by Francois Normandin
Link to comment
44 minutes ago, BioRobotics said:

Thanks for figuring out the issue and a work around.  Looking forward to the new package when you are able to get to it!

Version 1.4.1 is on the tools network.  I just opened VIPM and it told me there was an update for the UI Tools package.  The version listed here on LAVA still looks like 1.4.0.

Link to comment
  • 2 years later...
  • 3 years later...

Installed UI Tools v1.4.1.74 from VIPM. Although the examples are listed in NI Example Finder, the examples appear to be missing. Clicking on any listed example produces and error saying the file could not be found.

2023_08_25_12_06_38_.png

Also, as I was poking around, I did find a bug with the flowing of text when creating a message box. It seems that the Message string input must contain at least one CR for it to display the scroll bar properly. 
 

2023_08_25_13_19_41_UI_Tools.png

2023_08_25_13_26_03_Pictures.png

Edited by LavaBot
additional info
Link to comment
  • 6 months later...

Hey Francois and team. I know this is an old thread but was not sure where to post the topic. I am having trouble using the UI tools to create a grid of subpanel controls based on screen size. I have several hundred Sub-panels that need to be positioned in a grid pattern. 

I am having a hard time with setting the next control beside the other one and moving to a new row. Could you help me out. LabVIEW just crashed on me so I will post what I have done in a few.

Link to comment
On 3/19/2024 at 3:31 PM, jhoskins said:

Hey Francois and team. I know this is an old thread but was not sure where to post the topic. I am having trouble using the UI tools to create a grid of subpanel controls based on screen size. I have several hundred Sub-panels that need to be positioned in a grid pattern. 

I am having a hard time with setting the next control beside the other one and moving to a new row. Could you help me out. LabVIEW just crashed on me so I will post what I have done in a few.

It may be possible, but a few 100 subpanels somehow makes my alarm nerve tingle quite strongly! Sub Panels are not the light weight thing like Windows windows, where they made each control in a classic Win32 application its own sub-window. And they moved away from that idea with more modern UI frameworks too, and likely for some reason. You really may be stressing LabVIEW's window management capabilities beyond reasonable borders with so many subpanels present at the same time.

Link to comment
1 hour ago, Rolf Kalbermatter said:

You really may be stressing LabVIEW's window management capabilities beyond reasonable borders with so many subpanels present at the same time

Agreed. Even just 100 and UI updates become a bit flakey.

image.png.fa543eaa93c1499f04a1ce98a236906a.png

Link to comment

How else would you suggest to show the information needed at 1 time on the main front panel? I use the DQMH framework and clone the VI and put that VI in subpanel on the main UI. I have been doing it this way for a long time now and have tested it up to 200 and have seen any issues. Updates coming in are really slow as the cameras send out status updates every minute. Realistically it is around 25 panels but it depends on how many cameras need to be monitored and controlled. But lets not get caught up in that, in general I would just like to learn to use Francois tool to programmatically align controls and indicators in a grid pattern based on screen size.  Similar to what Shaun is showing above. (Nice VI by the way, mind sharing?)

Link to comment
4 minutes ago, jhoskins said:

How else would you suggest to show the information needed at 1 time on the main front panel? I use the DQMH framework and clone the VI and put that VI in subpanel on the main UI. I have been doing it this way for a long time now and have tested it up to 200 and have seen any issues. Updates coming in are really slow as the cameras send out status updates every minute. Realistically it is around 25 panels but it depends on how many cameras need to be monitored and controlled. But lets not get caught up in that, in general I would just like to learn to use Francois tool to programmatically align controls and indicators in a grid pattern based on screen size.  Similar to what Shaun is showing above. (Nice VI by the way, mind sharing?)

I would likely use a Table or MultiColumn List Control.

Edited by Rolf Kalbermatter
Link to comment
1 minute ago, Rolf Kalbermatter said:

I would likely use a Table or MultiColomn List Control.

That seems like a lot of work just to put everything that the VI shown in a subpanel can do. There are several controls and indicators on the VI that is in the Sub panel. Could you show me an example of what you are suggesting? 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.