Adding data to Matlab GUI Table from a listbox

I have a Matlab table taking different type of input from user. Is there any way I can drag a single variable from a displayed listbox into the current active cell?
If not, can I "Add" a button to my interface, which when clicked, will populate the current cell with selected variable from the list box?

 Réponse acceptée

It can be done as Amardeep suggested. But I think adding a push button is better as it avoids accidental operation when clicking on the table.
In the uitable CellSelectionCallback, you need to save the indices of the selected cell
setappdata(hObject,'CurrentCell',eventdata.Indices);
In the push button callback, you need to read the list box and then assign the new value. The following code assumes the uitable contains cell data and all columns are editable.
Indices=getappdata(handles.uitable1,'CurrentCell');
Data=get(handles.uitable1,'Data');
List=get(handles.listbox1,'string');
NewData=List{get(handles.listbox1,'value')};
Data{Indices(1),Indices(2)}=NewData;
set(handles.uitable1,'Data',Data);

2 commentaires

Nigussie
Nigussie le 4 Mar 2014
Hi, How can i put the entire columns' data of the gui table to a listbox using a push button.
Nigussie
Nigussie le 13 Mar 2014
I got the answer after some digging.

Connectez-vous pour commenter.

Plus de réponses (2)

Amardeep
Amardeep le 26 Oct 2011

0 votes

under the cell selection callback for the GUI table you can get the value from the listbox using the handles structure for the listbox.
Jayesh Kavathe
Jayesh Kavathe le 26 Oct 2011

0 votes

Perfect. I am a totally GUI newbie and still I was able to get it working. Appreciate for your time and exact code. :)
I am using the "Push" Button.

Catégories

En savoir plus sur Migrate GUIDE Apps dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by