From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Flickering in Table Indicator Displays

Solved!
Go to solution

Hello, I have a program displays arrays of strings of data in table indicators with 34 rows and 2 columns. I revised the program to add a sorting function for the displays and I noticed that the table indicators flicker. The displayed name and numberical string flickers on and off and this flickering scolls down the table from top to bottom and then repeats. I have been trying to fix this but without success. Even if I remove all the revisions I made the flickering remains. However, I kept the old version of the program and the table indicators do not flicker in this version. It appears that just revising the program causes this effect even if I take out the revisions. I do not see the flickering if I create an array of strings by inserting a string indicator into the 1D array function and then change dimension to 2. The data is displayed with flickering. The operators are used to seeing the table Indicator display so I am asking for help to resolve this issue. I've seen this problem before with the table Indicators flickering but do not know how to fix it. I tried increasing the update period for the displays from 100 ms to 1000 ms but this did not solve the problem. I also tried replacing the table Indicator with a new one from the function palette but still get the flickering. Any suggestions would be appreciated.

0 Kudos
Message 1 of 9
(7,099 Views)

Flickering is usually caused because LV needs to redraw the control, either because there is another control partially covering it or because you're using properties to modify the table.

 

Without seeing your code, it is impossible to tell exactly what's going on and how to fix it, but there is one thing which will likely help - wrap the update code in a flat sequence structure and add two frames before and after. Get the VI's Front Panel property and call the Defer Panel Updates property on that. Set it to T before the code and to F after. This will cause all the updates to happen together.


___________________
Try to take over the world!
0 Kudos
Message 2 of 9
(7,084 Views)
Solution
Accepted by topic author bill_schieber

I've got the answer to your problem, but you probably won't believe me until you try it.

 

Long story short - any table will flicker, no matter how frequently or infrequently you update the data at its terminal.  Even if the new data is unchanged, you'll get flicker.  Something about the way the front panel redraw of tables occurs changed from LabVIEW 8.0 to 8.2.

 

Grab a decoration (I usually get a little flat square), drop it in front of your table so it overlaps any part.  Run your VI.  You'll notice the flicker goes away.  Now go back and resize the decoration so it's only a few pixels in size, and drag it to the unused corner space in the upper left of your table.  Now grab your paintbrush and color the deco transparent.  Run your VI, and notice the flicker is still gone.

 

Something about having another visual element in front of the table (even one which is totally transparent) supresses the flickering, though I suppose there are only four or five NI software engineers who could give you the reason why.

 

I always put the deco in the little upper left corner space just so I can find it again, should I ever need to.  Doesn't really matter where it is.

 

Best regards,

 

Dave

David Boyd
Sr. Test Engineer
Abbott Labs
(lapsed) Certified LabVIEW Developer
Message 3 of 9
(7,074 Views)

Thank you. I did have one indicator display covering another. The technicians requested the indicator tables sorted by sensor name for some cases and left unsorted for other cases.

0 Kudos
Message 4 of 9
(7,019 Views)

Thank you. That worked like a charm to stop the flickering.

0 Kudos
Message 5 of 9
(7,016 Views)

Thank you for your comment David.

 

I stumbled on this post as I was facing the same issue and you saved me hours of troubleshooting.  I'm using LV2011 in this project and the flickering happened when updating a classic string indicator.  The issue does not seem to be limitted to the table control.

 

0 Kudos
Message 6 of 9
(6,771 Views)

Brilliant!!!.. it worked for me...

0 Kudos
Message 7 of 9
(3,322 Views)

OMG Thank you ! this is a really simple and effective way to kill the problem!

0 Kudos
Message 8 of 9
(3,195 Views)

Your recommendation absolutely works! I tried so many block diagram options and that didn't get rid of the flicker until your suggestion! thanks for sharing. 

 

In addition a shift register to update a table is orders of magnitudes faster to update said table than insert into table array etc. That causes severe slowdown due to memory management issues with LabVIEW. I wished they could figure out a way to better manage array functions that involve insertion or replacement operations. 

0 Kudos
Message 9 of 9
(1,492 Views)