- Popular Post
-
Posts
627 -
Joined
-
Last visited
-
Days Won
68
Content Type
Profiles
Forums
Downloads
Gallery
Posts posted by Darren
-
-
It sent me a password, but it doesn't seem to work.
In my case, the password they sent me had a lowercase "L" that looked like an uppercase "I". Once I figured that out, it worked for me.
-
LabVIEW Limericks?
Yes, Jack asked me to do some again. I promise I won't forget the lines to any this year.
-
1
-
-
I did get a chance to fix this issue for Quick Drop Ctrl-I in LabVIEW 2013. The issue has not yet been addressed for Ctrl-Shift-I.
-
- Popular Post
- Popular Post
NI does not support private methods and it's functionality may change unexpectedly so use with caution, or don't use it at all.Here's a VI that shows how to do the same thing, but with public properties/methods. Saved in LabVIEW 2012.
-
4
-
Argh! Force of habit giving that "VI Analyzer Tests" path, I guess. I've edited the post to refer to the "Quick Drop Plugins" location, and yes, you have to create it yourself.
-
Oops, I just double-checked in the code. The [LabVIEW Data]Quick Drop Plugins location for shared plugins is supported in LabVIEW 2010 and later. If you're in LabVIEW 2009, you have to put your plugin in the [LabVIEW 2009]resource location.
-
If you want a single plugin (saved in 2009) to be available in all installed LabVIEWs on your system (2009 and later), you can put the plugin VI here:
[LabVIEW Data]Quick Drop Plugins
-
If you read the VI Name property of a subVI and it returns error 1099, then it's a missing subVI. At that point, you could read the Label.Text property of the subVI to get the name of the missing VI being referenced. To my knowledge, there is no way to retrieve the fully qualified name of a missing subVI.
-
I wrote this VI a while back for a colleague. It's not perfect, but it's the closest thing I've got.
Saved in LabVIEW 8.6.
-
1
-
-
Darren, it's a shame the 'Read Icon Data from VI.vi' is password protected, as I'd like this functionality for LV 2010 onwards (as well as the corresponding 'Write Icon Data to Vi.vi' of course :-).
There were changes made to the Icon Editor in LabVIEW 2012 to facilitate the addition of the LabVIEW Icon API. Thus, I don't suspect the shipping API in 2012 could be easily ported to past LabVIEW versions. Instead, you can check out the community version of the Icon Editor API here.
-
-
In LabVIEW 2012, we added a programmatic interface to the Icon Editor in vi.libLabVIEW Icon API. Among other things, this API allows you to modify the text layer of the icon.
-
If I need the *value* of the variant, and I know it's an arbitrary simple numeric type, I'll always just cast it to an EXT with Variant to Data and go on my way, because I don't really care what specific numeric type it is. But if I need the *type* of the variant, I'll use the VariantDataType VIs (located in vi.lib\Utility\VariantDataType) because they give me that handy type enum. Since I've long-established that dichotomy for about a decade now, I guess that's why I never thought to do the error cluster type check your way.
-
- Popular Post
- Popular Post
Hey, neat! Your way of determining if a data type is an error cluster...
...is quite a bit simpler than the way I do it:
Sorry to get off-topic, but I always like to recognize cleverness when I see it.
The only time your way would run into trouble is when the variant is a cluster containing a non-I32 numeric type:
In this case, since Variant to Data will convert any simple numeric type into any other simple numeric type without error, your way would determine that the cluster was an error cluster, but my way would not. Incidentally, this code that I use for determining if a type is an error cluster is located here: vi.lib\addons\analyzer\_analyzerutils.llb\VIAnUtil Check Type If ErrClust.vi.
-
4
-
Hah, I just checked the link...the LabVIEW Wiki INI token is wrong. It's close, but it's wrong. I would tell you the right one, but since I work for NI, it's secret.
-
1
-
-
I have written "SuperPrivateSpecialStuff=TRUE" at the end of the "labview.ini" file.
You may want to double-check that INI entry.
-
They are amongst my favorite private properties so I can only hope there is a good reason for the privacy.
I don't think there's a particularly good reason why these are private. I have filed CAR 380592 and CAR 380593 to see about getting them changed to public in a future LabVIEW version.
-
1
-
-
This seems like a good CAR to file. Filed as CAR #377978.
Thanks for filing the CAR, Stephen...this thread fell off my radar.
Is this a CAR for the Delete From Array? I sure wish we had visibility into the CAR database...
Yes, Stephen CARed the Delete From Array performance issue.
-
> ...I once needed to know if the output terminal of a compound arithmetic node was inverted, a small oversight in the scripting properties...
For those that are curious, this scripting deficiency has been reported to R&D as CAR 197239, and is slated to be fixed in the next LabVIEW release.
-
I have no current plans to write such a wizard. But if the demand is there, we'll look into it further. A few weeks ago I created a new sample project for a colleague as a proof-of-concept, and it only took me a couple of minutes to construct the XML for it. Since I didn't need to customize the second page of the wizard, that's all I needed to do. Granted, I'm already familiar with the XML tags, so I understand it might take a bit more work for someone creating content for the first time.
I do recognize, though, that creating a customized second page is non-trivial. Our working assumption so far has been that customizing the second page is not something people will be doing that often. If it turns out to be a much more common use case, then I agree we will probably need something more automated, or perhaps a more documented template, to start that process. The current approach is to read the webpage you mentioned, and use the Actor Framework's custom second page code as a starting point.
-
If you already have a project that you want to appear in the dialog, and you don't need to customize the second page of the wizard, then the XML is all you need, and you can start with one of the shipping XML files in [LabVIEW]\ProjectTemplates\MetaData and modify your copy with your project's specific information. If you do need to customize the second page, then yes, there is more work to be done, but you can start with the Actor Framework's customized second page code (referenced on that webpage) and modify it for your project.
-
Eek! I really hope this isn't true anymore.
Crap, it looks like it is.
In my benchmarks in LabVIEW 2012, it looks like the Delete From Array "trick" is about 30 times slower than using Index Array.
Oh well, I guess I won't use that trick anymore. Thankfully, Jarrod's Create Place VI Contents VI shortcut for Quick Drop made it really easy for me to add a shortcut to drop this code snippet instead:
-
1
-
-
Here's one I posted a while back that you just drop in any For Loop that may take a while. It will pop itself open and show progress if a certain amount of time has elapsed and the loop isn't halfway done yet.
-
1
-
-
The method I always used to get the last element in an array is the "Delete Element From Array". If you don't wire anything to the index, or length, you get a scalar of the last element in the array as the "Deleted Portion".
As you mention, it is in the online help for the function. We also try to indicate this behavior in the Context Help for Delete From Array:
The fact that "last elem" is in parenthesis indicates that this is the behavior when you leave the index input unwired. If this isn't discoverable enough (which I'm thinking may be the case if people are writing VIs to do it), then how could we make it more obvious? I use this behavior of Delete From Array all the time...in fact, I may use Delete From Array just to get the last element of a 1D array more than I use it to delete stuff...
MCLB Automated Selection
in User Interface
Posted
There are some private properties you can use in LabVIEW 2012 SP1 and later that allow you to set the focus row of a Listbox or Multicolumn Listbox programmatically. Whenever you programmatically change the value, if you also programmatically change the focus row, it should behave in the manner you're looking for. I had heard the behavior was fixed natively to the controls in LabVIEW 2013, but it appears to still be an issue that we have to workaround programmatically.
This VI (saved in LabVIEW 2012) contains the private properties you would need. Again, these properties were added in 2012 SP1, so they're not available in an earlier version.
Oh, and it was a top woman, not a top man, who added these private properties for us.
Focus Row Properties.vi