LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Non imidiate update of table rows

Hello

I think i've read somwhere that it is posible to fill in a number of table rows without updating the screen imidiatly.

The update should be done when all cells/rows are initialized in order to speed up the screen update.

 

Is this just my imagination ?

0 Kudos
Message 1 of 3
(3,136 Views)

Per:

 

Have you looked at SetTableCellRangeVals()?  It has less overhead than individual calls to SetTableCellVal().

 

Or if you need to update individual cells (if they're not in a block so you can use a range of cells),  you can use SetTableCellAttribute().  Here's a note from the help on SetTableCellVal():

 

Note   This function updates the displayed value immediately. Use SetTableCellAttribute with ATTR_CTRL_VAL to set the control value without immediately updating the displayed value. Because of the difference in behavior, SetTableCellAttribute with ATTR_CTRL_VAL is generally faster than SetTableCellVal. However, if the table control in which you set the cell value is the active control in the panel, SetTableCellAttribute with ATTR_CTRL_VAL displays the value immediately.

0 Kudos
Message 2 of 3
(3,127 Views)
In addition to Al suggestions, you could consider hiding the table before you need to update it and display it again after update has finished: if you don't call any ProcessDrawEvents or ProcessSystemEvent while updating the table, it will not disappear from the screen.


Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 3 of 3
(3,109 Views)