Filter löschen
Filter löschen

dynamic button on uitable. Code include. HELP PLEASE!!!

1 Ansicht (letzte 30 Tage)
James Hendren
James Hendren am 27 Jun. 2013
I need to add a dynamic remove button to a uitable. The adjustment needs to be made at the botom of the code. Can anyone help please function Add_Row_To_Table %create a table: handles.table1 = uitable('Data',{'a',false;'b' true},... 'ColumnFormat',{[],'logical'},... 'ColumnEditable',[false true],... 'CellEditCallback',@(h,e) disp([e.Indices(1) e.NewData])); % create a pushbutton: handles.pushbutton1 = uicontrol('Style','Pushbutton',... 'Units','Pixels',... 'Position',[150 350 80 40],... 'String','Add Row'); % create a pushbutton: handles.pushbutton2 = uicontrol('Style','Pushbutton',... 'Units','Pixels',... 'Position',[50 350 80 40],... 'String','Remove Row') %set the action of the pushbutton1 for when it is clicked set(handles.pushbutton1,'Callback',{@AddRow,handles}) set(handles.pushbutton2,'Callback',{@RemoveRow,handles}) function AddRow(h,e,handles) %get old data: oldData = get(handles.table1,'Data'); nRows = size(oldData,1); %generate a new row of data: newRow = {char(97+nRows) logical(rem(nRows,2))}; %add new row to existing data newData = [oldData;newRow]; set(handles.table1,'Data',newData) % %set the action of the pushbutton for when it is clicked set(handles.pushbutton2,'Callback',{@RemoveRow,handles}) function RemoveRow(h,e,handles) oRow = get(handles.table1,'Data',newData) delete (newData)
  1 Kommentar
James Hendren
James Hendren am 27 Jun. 2013
function Add_Row_To_Table
%create a table:
handles.table1 = uitable('Data',{'a',false;'b' true},...
'ColumnFormat',{[],'logical'},...
'ColumnEditable',[false true],...
'CellEditCallback',@(h,e) disp([e.Indices(1) e.NewData]));
% create a pushbutton: handles.pushbutton1 = uicontrol('Style','Pushbutton',...
'Units','Pixels',...
'Position',[150 350 80 40],...
'String','Add Row');
% create a pushbutton:
handles.pushbutton2 = uicontrol('Style','Pushbutton',... 'Units','Pixels',...
'Position',[50 350 80 40],...
'String','Remove Row')
%set the action of the pushbutton1 for when it is clicked set(handles.pushbutton1,'Callback',{@AddRow,handles}) set(handles.pushbutton2,'Callback',{@RemoveRow,handles}) function AddRow(h,e,handles)
%get old data:
oldData = get(handles.table1,'Data');
nRows = size(oldData,1);
%generate a new row of data:
newRow = {char(97+nRows) logical(rem(nRows,2))};
%add new row to existing data newData = [oldData;newRow]; set(handles.table1,'Data',newData)
% %set the action of the pushbutton for when it is clicked set(handles.pushbutton2,'Callback',{@RemoveRow,handles})
function RemoveRow(h,e,handles)
oRow = get(handles.table1,'Data',newData)
delete (newData)

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Migrate GUIDE Apps finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by