How to automatic detect selections in different uitables, and clear the selections in some of the uitables? Thanks

3 次查看(过去 30 天)
Hi,
I meet some problems and wonder if you could help me out.
Suppose we have two uitable objects, say A and B, both visible all the time. Users could make selections in both A and B. The goals I try to reach are
1, how can I/code check/detect whether uses make selections in both A and B;
2, assuming users make selections in both A and B, users can clear their selections in uitable A using ctrl+click, but how can the code clear the selections in A automatically?
I have googled online for quite a while, but I have no luck out of it. could anyone nicely help me out? Thank you.
Jon

采纳的回答

Teja Muppirala
Teja Muppirala 2011-5-1
If you want to clear all the selections, you can redraw the table (h is the uitable handle):
tmp = get(h,'data');
set(h,'Data',[]);
set(h,'data',tmp);
clear tmp

更多回答(1 个)

Jonathan Wang
Jonathan Wang 2011-4-30
I think I sort of figure out how to do the first one in the old way:
set global flags in corresponding _CellSelectionCallback function for both A and B, we can simply check the flags to see if selections are made.
I still don't know how to clear selections user makes by the code....
  1 个评论
Jonathan Wang
Jonathan Wang 2011-5-1
Thank you Teja and it works. My own tries did not have "set(h,'Data',[]);" step and that's why I failed to clear selections. Simple but useful trick. :-)

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Interactive Control and Callbacks 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by