Greetings John,
Yes, you will always see a performance hit when you overlap graphic
elements that dynamically update. (You may even notice a slow down when
placing X-Y graphs over top of large, static bitmaps.)
Someone on the LabVIEW team can probably give more insight into the
underlying technical details, but I expect the delay is caused by the
need to poll the state of each layer between screen updates. More work
= more time, and when task scheduling and critical processes are added
to the equation, a slowdown of the UI thread seems inevitable.
Ideally, you should avoid layering dynamic indicators, but the best
alternative to your existing strategy will depend on your GUI
objectives, or more specifically, what the users need to see in order
to get the job done.
Can you provide more details about your existing application? What were
you trying to achieve by layering the indicators? Is all of the
information presented critical to the user's task flow, or could you
offload some of the indicators to subpanels (or perhaps 'hidden' tabs)
without impacting the usability?
Some other questions you should be asking: Do the users really need to
see the XY graph AND the other indicators at the same time? Does the
information in the graph duplicate the information presented in the
other indicators, or are the displays independent? If they are
independent, does the user really need to seem both displays
simultaneously, or does the user's task flow imply they could be viewed
sequentially or independently? And are all of the indicators under the
graph absolutely essential, or are some of them merely nice extras?
Sometimes, you can rethink the way you are presenting the data
visually, and actually communicate more useful information with a
smaller number of indicators and much less GUI clutter. Or put another
way, by improving the quality and appropriateness of the data
presentation, you can often reduce the total number of indicators.
Keep in mind, every time you add another item to a panel, you
effectively lower the relative significance of all the other items --
or, if the panel has a single button, it is much easier to comprehend
and use than a panel with dozens of buttons and indicators. Given that
human cognitive processing is generally believed to be limited to about
7 items, judicious editing of the extraneous elements is recommended
anyway.
But all of this depends on usability issues and the user's task flow.
Without more specific information about your application and
objectives, it's difficult to recommend an alternative strategy.
Can you give us a bit more info...?
Cheers,
Dave Ritter
BetterVIEW
www.bettervi.com
I have an XY graph which is visible sometimes and not visible at
others. It
seems important what it is covering. For example if it is covering
another
graphic with a changing display the whole process is slowed down. If I
remove the covered graphic or make it not visible speed improves..
There are several indicators with changing values that are covered by
my
graph. Is it better to make them invisible or make their values not
change
or is there some better way Tab controls for example.
Yours Sincerely
John
John Brohan National Instruments LabVIEW expert in Montreal
Traders Micro "We connect all sorts of things to computers"
317 Barberry Place DDO Montreal PQ Canada H9G 1V3 Tel (514)995-3749
[EMAIL PROTECTED] http://www.TradersMicro.com/Index.htm