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

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
"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..

Share this post


Link to post
Share on other sites
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..)

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

Bonjour Antoine, 

I didn't resubmit on LVTN. The approval process was long last time. I'll release it on the JKI Package Network at the first convenience!

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites

Yeah, I guess I abused of my privileged position with access to JKI Package Network and uploaded it straight there.

I now updated UI Tools page with version 1.4.1 to match.

Share this post


Link to post
Share on other sites

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.


  • Similar Content

    • By drjdpowell
      I have an application where the "second monitor" of the Windows computer is actually a projector, used in running a test.  I display test patterns on this monitor, but the User can't see them.  The problem I am having is ensuring that all dialog boxes, including error dialogs, show up on the primary screen always.  But, intermittently, they start to show up on the projector.   I cannot seem to discover how Windows/LabVIEW decides which monitor to show dialogs on.   Does anyone know?  
    • By Moes
      Hello everyone i am relative new to labview and currently i am bit stuck need help...
      i want to capture data with a digital trigger on my chassis PFI0 (9178), the pulse is 20ms long and occurs on my straingauge 9237 module.
      The pulse comes in 10 times in a row with couple of miliseconds between it, can i measure it every time and push it inside an array like a "last in first out" memmory to evaluate it slower for the user?
       
      I am currently struggeling with the loop dividing into more then one loop approach.
       
       
      How to breach out from accquire->store->plot in one loopdone right with good performance? I don't know how to shape the cure because there is a dependency from loop time to datapoints with the daqmx task inside of it :-/
      Capturing should always be possible and run in background and the user just uses the frontend to play around with filters (me learning what filter shape the cure in which way)
       
      It would be nice if someone can share their knowledge towards realizing multiple graphs from a pulse that comes in and is stored in a graph.
      I know my program is not pretty right now but with progress it will be nicer, function first to learn!

      WheatstoneSix_6.vi
    • By Taylorh140
      I am trying to use a mixed signal graph to plot a set of digital data (12 lines) and 4 arrays of analog data in XY format.  For the analog data I want each array to be assigned to a different group in the graph, but at runtime they seem to all default to Group 1 (the Pressure graph shown below).  I have been able to change them using the legend or the graph properties for each plot, but cannot find a way to do it programmatically.  Is there a property node that can be used to set this?
       

    • By Axelwlt
      Hi,
      Is there a way to make a type def behave as a Strict Type Def during development (so that cosmetic changes made to the .ctl are propagated), and as a Type Def. at runtime (so that the cosmetics can be still be changed with property nodes)?
      My use case is that the code just needs to colour the controls at runtime, the other property values are decided during development.
    • By Tomi Maila
      At JKI, we have found that a professional user interface design can make a huge difference for LabVIEW applications. That’s why we’re very proud to announce we have just released the JKI Flat UI Controls for LabVIEW, a beautiful, professionally-designed set of LabVIEW controls that we use on some of our own projects at JKI!  We hope that by sharing these with the community, we can help make it easy for just about anyone to build their own beautiful and intuitive user interfaces in LabVIEW.
       
      Learn More & Download 

×
×
  • Create New...

Important Information

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