Tags: application, behavior, clusters, experience, fix, labview, opportunity, order, programming, tabbing, thetabbing, tryingto, typedef, user

LabVIEW tabbing behavior

On Programmer » LabVIEW

3,851 words with 2 Comments; publish: Wed, 30 Apr 2008 10:03:00 GMT; (20046.88, « »)

I have a LabVIEW application with some typedef clusters. I am trying

to make the user experience simple. The opportunity is to fix the

tabbing order between the elements of a cluster.

My VI is a configuration dialog and a problem exists with the tabbing

behavior. The VI has a tab control. I have three clusters on a

particular tab with two elements each. The elements are numeric high

and low limits.

I want the user to tab between the six (6) limits (3 clusters x 2

limits each).

The problem is that I can tab between the clusters. Or I can tab

between the elements in a cluster. But I have to use a funky-key (TM)

combination, which is probably a gang-like gesture in some major US

city, in order to get to the elements in another cluster.

At this point, I know how to "tab" to the next cluster of elements:

0. Start at the 2nd element in the first cluster 1. funky-key combo

up; 2. Tab to the next cluster; 3. funky-key combo down.

Did I mention I need to translate this behavior to Spanish?

My solution, unless the wizards at NI can help, is to replace every

cluster in my configuration dialog with independent controls in order

to get the desired behavior. Kick the clusters, along with COBOL and

FORTRAN back to the rock pile.

I thought about intercepting a key down event and filtering tab events

to do the right thing. But that becomes a problem with the number of

clusters in the tab control. Also, I don't know what features might

be added, and it bypasses the default tabbing order, so it does not

seem to be a realistic solution from a code management perspective.

Another thought, is related to something LabVIEW can do. On the

cluster, I can see an option under Advanced >> Key Navigation, >>

"Tabbing moves into contents". However it is grayed out. A maniacal

sound, not unlike laughter, emanates from my speakers as I read

through the help for that checkbox. The help for "Tabbing moves into

contents" states that the feature is only for tab controls, i.e. not

clusters. Is there an INI file setting to expand this capability?

So the next-to-the-best solution is to ask NI to build a special

LabVIEW version that allows me to select that checkbox when a cluster

is selected so that the user experience is 11X better. This exceeds

NI's current goal of 10X for test ;-)

Any thoughts or other ways to solve this problem come to mind?

Waiting for your insight into this conundrum.

All Comments

Leave a comment...

    • Kenneth,

      Since you are using a configuration dialog VI for the user interface

      and, apparently, other VIs for the processing, perhaps separate

      controls for the user interface will provide a good experience for the

      user. You could then write the data to cluster indicators and pass

      that to your other VIs. The indicators could be hidden so they are

      not part of the user experience. Not quite as elegant but quite

      functional. If you want to visually group the elements, use

      decorations which look somewhat like clusters. (The users don't need

      to know whether the borders are merely visual guides or part of the



      #1; Wed, 30 Apr 2008 10:04:00 GMT
    • Thanks for the response!

      Separate controls with visual grouping by decoration is the solution I

      have implemented. However, the configuration controls are not in a

      separate dialog VI, they reside on a tab control in the main

      application's HMI. I bundle the elements into a cluster, but only

      because I need that data as a "cable" for subVI calls elsewhere.

      I am stretching the use of clusters as both a data type and a user

      interface element. It is frustrating to see an option/feature that

      makes sense, i.e. tabbing into contents, but which is not available.



      #2; Wed, 30 Apr 2008 10:06:00 GMT