Uitable very slow updating displayed data
7 次查看(过去 30 天)
显示 更早的评论
Hi all
I create a small GUI where three uitable are implemented to display some data. Interactively data can be modified or completely changed. In this second situation the data change become very slow (~50 seconds for displaying 20x20 data, double type). To speed up the process I used the 'setValueAt()' method taking the control of the proper java handle related to the uitable. But without any improvement. What is the hidden bottle neck?
the following code show the callback used to set the data
function setDataToTable(dataTable)
% dataTable = struct with array of doubles
% table = handle of table
% profile on
fcn = table.DataChangedCallback;
table.DataChangedCallback = []; % disable for a while to avoid refresh for each value
kk = 0; jj = 0;
if isfield(dataTable,'newData')
for kk = 1:size(dataTable.newData,2)
for jj = 1:size(dataTable.newData.value,1)
table.setValueAt( ...
dataTable.newData(jj,kk),jj - 1,kk - 1);
end
end
end
table.DataChangedCallback = fcn; % restore callback
% profile off
% profile viewer
end
Thanks in advance for any comment or suggestion
claudio
0 个评论
回答(1 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!