How to select/highlight a cell in the uitable automatically? Thank you.

Hi,
I am working on part of my project, which the code update the output automatically if user chooses some cell in the uitable:
suppose we have a 2 rows * 1 column in the uitable like the following:
A
B
In my projects, A and B correspond to different outputs: they plot different curves in the same axis. What I want to do is that:
1, when user chooses A, we plot the curve A in the axes,
2, when user chooses B, we plot the curve B in the axes,
3, if user chooses both A and B, the code would plot the curve A in the axes, and update the uitable with only A selected, ie, we force to choose one cell at one time.
My question is that: in case 3, when users chooses both A and B, how can I update uitable to make only A chosen/hightlighted? I can re-set the uitable, but I don't know to make A to be chosen automatically after I re-set the uitable.
Thank you.
Jon

 Respuesta aceptada

Andrew Newell
Andrew Newell el 2 de Mayo de 2011

4 comentarios

The only thing you can do progamatically is emulate that a cell was selected... it won't highlight the cell, merely activate the cells callback for a specific cell if you want your table's cell selection event handler to do something with that specifically.
It's not pretty but it works...
eventdata = struct('Indices',[row col]); % row/col for cell to activate...
uitableMyTable_CellSelectionCallback(handles.uitableMyTable,eventdata,handles); % where uitableMyTable is your uitable tag
it's a pity. Generating a callback cannot affect which cell is highlighted.
Hi,
I have a simillar problem, I want to activate first cell of table([A 1])and show it A1 ina lable component. i tried above code but it didn't worked, how can I solve this problem ?
Thanks for your help.

Iniciar sesión para comentar.

Más respuestas (1)

For what you are trying to do, a listbox would be a more natural choice.
Here 'Max = 1' is saying that you can only select one at a time.
figure
uicontrol('style','listbox','String',{'A' 'B'},'Max',1,'units','n','position',[0 0 .1 1],'background','w')

2 comentarios

And you CAN select listbox entries programatically.
really thank you Teja. I actually have two uitables, each of which has multiple columns, so I gotta use uitables. I used A and B in my question to make it simple.

Iniciar sesión para comentar.

Categorías

Más información sobre Environment and Settings en Centro de ayuda y File Exchange.

Preguntada:

el 1 de Mayo de 2011

Comentada:

el 11 de Sept. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by