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

3 ビュー (過去 30 日間)
James Hendren
James Hendren 2013 年 6 月 27 日
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 件のコメント
James Hendren
James Hendren 2013 年 6 月 27 日
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)

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeMigrate GUIDE Apps についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by