MATLAB: Adding data to Matlab GUI Table from a listbox

guitable

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?

Best Answer

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);