Adding data to Matlab GUI Table from a listbox

8 次查看(过去 30 天)
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?

采纳的回答

Fangjun Jiang
Fangjun Jiang 2011-10-26
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 个评论
Nigussie
Nigussie 2014-3-4
Hi, How can i put the entire columns' data of the gui table to a listbox using a push button.

请先登录,再进行评论。

更多回答(2 个)

Amardeep
Amardeep 2011-10-26
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 2011-10-26
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.

类别

Help CenterFile Exchange 中查找有关 Migrate GUIDE Apps 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by