Showing results for 
Search instead for 
Did you mean: 

What is the difference between "System" buttons and boolean buttons?

I'm writing a VI with an event structure that allows me to push different buttons to control external instruments, but I found two types of buttons worked: "System" buttons and "Boolean" buttons. On the surface, the functionality seems the same: I can write the VI so that either one works, and they work in the same way, but which one is right?

Here is a little more info on what I'm doing. I have a case structure that has one "timeout" case, which just measures the position of a movable stage. Another case, if a "system"-type button is pressed, moves the stage to an absolute position. Another case activated by a "boolean"-type button moves the stage to the zero point. I could switch these and it would still work, but I don't understand how the buttons are different.

Also, right now I'm using the "run continuously" function so that the loop just repeats. Is this the right way to do it? I could put everything inside a loop, and make my own stop button for it. Would that be better? Worse? --> I think I found the answer to my own question: run continuously will stop and start the code at each instance, so a while loop will be better because it doesn't start and stop repeatedly. (True?)


Message Edited by Karl T. on 03-31-2008 05:43 PM
0 Kudos
Message 1 of 4

You never want to design your program to have to use the run continuously button.  It is more for debugging than anything else.  Using a while loop with your own stop button is the preferred method of doing things.

The System, 3-D, and Classic Booleans all basically work the same.  The appearance is different.  The System buttons look like your OS buttons that you see on all your other programs.  The 3-D were introduced in LV6 and remain standard across different OS's and are not affected by System color changes or System theme changes.  The classics behave similarly to the 3-D, but they are the older controls that existed prior to LV6 and have been kept for legacy's sake.

There are arguments for using system controls vs. 3-D controls (I don't think most people use the classic controls much anymore).  So, you really have to make a personal decision as to which you prefer to use.  NI pushes the system controls, but you'll notice there is a large number of controls which are not available in the system pallette.  I have made versions that look like system controls, but they do not automatically update for theme or system color changes.
0 Kudos
Message 2 of 4

Matthew Kelton wrote:
(I don't think most people use the classic controls much anymore).

I have used 'classic' controls a couple of times because you can easily hide the border of a cluster or array by setting it's color to invisible.
No functional change, just useful cosmetically sometimes.
Troy - CLD "If a hammer is the only tool you have, everything starts to look like a nail." ~ Maslow/Kaplan - Law of the instrument
0 Kudos
Message 3 of 4
Great, thanks!
0 Kudos
Message 4 of 4