Home > Community > Discussion Forums

LabVIEW Idea Exchange

Showing results for 
Search instead for 
Do you mean 
We've turned on a search before post feature in the LabVIEW Idea Exchange. This new feature will help cut down on the number of duplicate ideas in this space!

The NI Idea Exchange is a product feedback forum where NI R&D and users work together to submit ideas, collaborate on their development, and vote for the ones they like best. View all of the NI Idea Exchanges to post an idea or add your opinion on an existing one today!
New Idea

Visible Cluster AutoSizing Style

Status: New
by Member Greg_CLA on ‎04-29-2016 09:38 AM

Add a Visible Item to the cluster container to enable the display of the currently selected AutoSizing style




Similar to the other Visible Items (enabled above on "source" string & "code" integer) like

  • "Radix" for a numeric integer (d-Decimal, o-Octal, x-Hex, b-Binary, p-SI Display)
  • "Display Style" for a string (n-Normal, \-\ codes, x-Hexadecimal, p-Password)

For consistency with others similar above:

  • also available on Block Diagram cluster constants
  • Visibility only selectable in edit mode
  • If Style is visible, it is changable in BOTH edit AND run modes



Cleanup Failure Should Show Dialog

Status: New
by Member Kirk on ‎04-28-2016 12:25 PM

Sometimes when you hit the Cleanup button in a block diagram it doesn't work.   There seem to be many reasons, complexity of the block diagram, certain objects make it fail, etc.  This idea is not how to fix those failures, but when they do occur, the cleanup routine should give some response back to the user.  A dialog explaining what is wrong, should be shown.


Currently if you hit cleanup and it is going to work, you get the spinning blue circle and it cleans up.  If it doesn't you get NOTHING.  As if  your click wasn't registered.  There should be some response.


Abort Button should indicate the last execution point in source

Status: New
by Member Kirk on ‎04-28-2016 11:32 AM - last edited on ‎04-29-2016 10:36 AM by Community Manager

When the abort button is pressed, and the development environment is present, the block diagram should be shown and the portion of code that was currently executing should be hilited.



Improvements for the "Save Changes?" dialog

Status: New
by Trusted Enthusiast on ‎04-28-2016 06:53 AM

I've been wondering for years now why the LV Save (& Save All) dialog is quite unusual in terms of its layout & usability.


Redesign the "Save Changes?" dialogin accordance with the standard dialog design criteria as follows.


  • Resize the dialog to be somewhat bigger than now.
  • Place the Apply same action checkbox & the Affected items list at the top half of the dialog. Remove these items from the tabbing list, so the user can easily tab among the other 3 buttons, with Save highlighted by default.
  • The Affected items list is not sorted properly, but in the Explain Changes dialog, it seems the VI List is alphabatically sorted. So when you select a VI in  the Affected Items list & click the "List unsaved changes..." hyperlink-like text, the selections are confusing to the user. PFB snapshot.

Save Changes Dialog.jpg


  • Additionally, the selection in the Affected Items list is not actually a selection, but looks like only a marquee. It gives a false impression that the selected item can be edited. Fix this.
  • Make the Affected Items list to be vertically scrollable, instead of the current horizontally scrollable style, which is highly cumbersome.
  • Change the "List unsaved changes..." hyperlink-like text into a button that is prominently visible. New users think that this would open a web browser.
  • Place the Save (All), Defer Decision / Don't Save (All) & Cancel buttons at the bottm right of the dialog in a horizontal fashion.
  • Add the Help button, like in many other dialogs in LV.
  • Keep the name of the dialog to be consistent - "Save changes before closing?", instead of like "Save changes? (Close Project)" - The Close Project text is misleading.

When developing new VIs f the procedure is usually the following:


1. right-click class or desired location, new VI (static or dynamic dispatch template etc.)

2. Implement functionallity

3. Edit VI icon for easier recognition

4. Save VI


The problem here is that usually the icon allready contains the ideal name for the VI which means I am typing the name of the VI twice, once when editing the the icon and once when saving.


Would it not reduce the development-time by suggesting the name entered in the VI icon editing procedure as the user attempts to save the VI?


I'm currently expanding a large SA with 270 classes and on good days I implement 20-30 VIs and would find it nice if I were not forced to type the name twice.


Interested what experienced LV-users think of this suggestion!?

Status: In Development


The title says it!


It is often confusing "Which is the opposite end in a queue?/What does opposite end mean?", esp for new user of LabVIEW. Smiley Frustrated


Seems here, even the author of the LV Queue primitives was not able to recollect its name correctly. Smiley Wink


Also, please see below from the LV Help. Smiley Happy



Enqueue Element At Opposite End.jpg

0 Kudos

In a comment to this suggestion: Paste from Excel to LabVIEW Arrays, I suggested what I am reposting here as a separate Idea, namely, offer the possibility to paste (or import) from the clipboard, wherever you can Export to Clipboard.


The Export to Clipboard shortcut menu is not without limitations. For instance, for graphs, here are a few I mentioned in the past:





Note that, as far as I can tell, the only thing we can so far export to the clipboard from LabVIEW are strings (see this suggestion to change that).

Therefore, this suggestion is to offer the same limited ability, i.e. import strings (spreadsheet formatted arrays, graphs, combox box array, etc) into objects with which they are compabible.

Clear indication of handled User Events

Status: New
by Trusted Enthusiast Trusted Enthusiast on ‎04-21-2016 10:46 AM

When working with User Events as an API between modules there is a nasty little thing which unfortunately keeps rearing its ugly head.


If we retrieve a cluster of User Events (or an Event registration refnum) from a module with events we should be listening to and wire this to an event structure we get a memory leak if not all events are handled.  This particularly occurs whenever the API is extended and not all listeners have been updated.


2016-04-21 17_40_14-Edit Events.png


It would be much easier to track down these kinds of problems if the Event Structure would display which User Events are in the associated Registration Refnum but are NOT yet handled.  This would be a great too in tracking down rogue Events and eliminating possible memory leaks due to implementation errors.


Currently one has to iterate through ALL of the user events and observe the warning "this event is handled in another case" in order to find out if all have been handled or not.

0 Kudos

I only mean that this should apply to the sub vi's that come with LabVIEW. I was putting together a vi that is execution time sensitive. I had a choice between the IMAQ Histogram and IMAQ Histograph. I could get the result i needed from wither one but I was forced to try each,  run a few times, and clock each one. There are many such "which of these two similar options is fastest" choices we make for every program and knowing which upfront would be very helpful.

Allow "Find" to target specific values

Status: New
by Trusted Enthusiast Trusted Enthusiast on ‎04-20-2016 05:54 AM

When doing code refactoring (or other improvements) we often run into the situation where we may want to replace constants for whatever reason.


Example: If we previously have only had support for 8 devices which (for reasons I won't try to defend here) ends up being hard-wired into the software and we now want to change the code to replace these constants with a Sub-VI we have a very hard job finding all of the instances of "8".  I can search for a numeric constant but this produces so much noise it's useless.  It it were possible to narrow down the search to the value "8" for a numeric constant thent he search would be much easier.


Same goes for paths, enums, error clusters and so on.

0 Kudos

It’s amazing to send some questions about programing for labview. Recently, I use labview to develop an application which includes some file I/O function such as creating path to save some data. and I use subVI’s path cite to indicate new path for saving data. But unfortunatelyI fund that it’s seriously problem after generate exe application and running。


Absolutely. It’s unavailable to save data. So I have to using top VI path to generate new path and solve this problem, during this time. I have an inspire to share with you during generating exe application using labview which has application self check security as show in next table.


Check Path

Determining whether it’s security or unavailable after produce exe application when running

Auto change scroll position in table controller

If user set table controller number of page for displaying. it can automatically adjust scroll position in table controller when new page data incoming.

Status: Declined

Use the Application Directory VI to obtain path information that is valid when running in both the IDE and in an EXE


the input value of the conditional terminal should  " pass through "


                  (like the "case selector" of the "Case Structure")





                                                         like this,



So, due to massive lag in the project environment, borked graphics drivers on the virtual machine and the resulting random rearrengement of objects on the front panels, i've Locked all objects.

Now, trying to delete a control from the block diagram nothing happens, which is technically correct. No information or warning, however, is borderline Bug in my book. I'd expect a popup "Object is locked", not just a silent denial.


LV2014SP1f3 (which for some reason is instead of 14.1.3.x, but that is another discussion)



Right now the only way possible to set the tabbing order of controls on the front panel of a (sub)VI is to use Edit >> Set Tabbing Order.


I would like a VI Server property/method to be able to programmatically set the tabbing order of the controls on the front panel the way I want.  This way I can write a script to fix a large number of VIs without needing to manually click through each one.  (Of course I would be responsible for programmatically figuring out the order I wanted, but I could make some general assumptions like following the top-bottom left-right on the front panel existing layout, or following how they are connected to the connector pane, etc)

Add index -1 or +1 in Loops

Status: New
by Member 1abvi3w on ‎04-14-2016 02:00 PM

It would be handy to have possibility to expand the index block to start from -1 or 1.



0 Kudos

As the title says.


double click on a *.rsl file should open the Vi Analyzer results window


We have a CI server that runs VI Analyzer and posts the rsl files as artifacts, downloading the rsl file to my code base works great to find and fix errors. The only thing missing is the double click.

The Open/Create/Replace file I/O primitive is pretty powerful.  It will check to see if the file is there for you, and, if not, create a new one.  I use the "Open or Create" option often when generating multiple delimited text files in long term tests.  When a new file is created, I need know so I can add a header, and I need to skip the header operation if the file is being appended.  Sure, I could check to see if the file exists before trying to open it, but then wouldn't that just make the power of the Open/Replace/Create function redundant?  Some operation took place based on my input to the "operation" terminal, and whether or not the file exists.  Unfortunately, I have no idea what that operation was, because the function doesn't tell me. Let me know if the Open/Create/Replace function created a new file so I can add my header.  


New File Feature.png


This is not without precedent.  For example, the "Obtain Queue" primitive has an option to create a new queue if a queue of the given name is not found.  It let's you know if the new queue was created:


created new.png

Multiple Line Pattern in the Browse Options

Status: New
by Trusted Enthusiast on ‎04-11-2016 08:35 PM

As requested by this fellow 8 years ago: http://forums.ni.com/t5/LabVIEW/Multiple-pattern-lines-in-path-s-Browse-Option/m-p/776968/highlight/..., it would simplify some GUI if the user could select from a drop-down list, which files to look for in a File Dialog pop-up window.

Currently, we get a single line:

Screen Shot 2016-04-11 at 18.33.05.png

This results in this kind of mess courtesy of the IMAQ Load Image Dialog.vi):


Screen Shot 2016-04-11 at 18.35.29.png


To update the snapshot illustrating this other thread, here is an example of MS Word in action, illustrating the desired behavior:


Screen Shot 2016-04-11 at 18.27.21.png


In other words, it helps cleaning up the results, while using a single dialog window for all kinds of different files (which will be dealt with differently down the line).

I am not sure how multiplatform that can be, but here is the file open dialog options from TextWrangler on MacOS:


Screen Shot 2016-04-11 at 18.30.21.png


so it seems that can be done.

The thread I am referring to had a link to a Windows API call, but the link is dead (probably the result of the recent disastrous site cleanup). And of course is not multiplatform.

0 Kudos

I have 208 data producing test stations, located in 10 different labs in 4 different countries.

I need an easy way to copy or move the files from the test stations, to a lab data computer, to a “web service” to a master global data base in the US.

Within each test lab I am thinking a network shared drive.

However, getting the files from China, Taiwan and Germany to the US automatically is challenging.

I am thinking that a web service like “amazon web services” would work.  But setting it up and programming it into LabVIEW is more challenging than it should be. 

It would be really nice if Nation Instruments would create a simple easy solution to do this.

When placing Icon Text inside a frame in the Icon Editor, there appears to be a rule that the text region is between the lowest two horizontal lines.  I'm trying to design an icon with a two-line-width frame, with a lot of empty space in the middle, but this (deduced) rule stymies my efforts.  I'd like to suggest that the algorithm be changed to place the Icon Text inside the largest blank space available.


Here is an illustration of the problem.  All these images are a one-pixel Frame and a single line of text.  In the first image, a single additional line is at the top, while in the second image, a single line is at the bottom.  The final image pretty much precludes designing a Template with a two-pixel bottom border, something I'd very much like to do.

Top Template.pngBottom Template.png


Bob "Frustrated" Schor



About LabVIEW Idea Exchange

Have a LabVIEW Idea?

  1. Browse by label or search in the LabVIEW Idea Exchange to see if your idea has previously been submitted. If your idea exists be sure to vote for the idea by giving it kudos to indicate your approval!
  2. If your idea has not been submitted click Post New Idea to submit a product idea to the LabVIEW Idea Exchange. Be sure to submit a separate post for each idea.
  3. Watch as the community gives your idea kudos and adds their input.
  4. As NI R&D considers the idea, they will change the idea status.
  5. Give kudos to other ideas that you would like to see in a future version of LabVIEW!
Idea Statuses
Top Kudoed Authors