creating App design control buttons programmically

1 次查看(过去 30 天)
I'm trying to create an app design that would read an xls spreadsheet and create a new button if someone was to go in and add an extra column of data.
Initially I thought of doing a "for loop" statement, but I don't know the code that would generate a new button for how ever many columns that are added in the spreadsheet.

采纳的回答

Kojiro Saito
Kojiro Saito 2018-11-21
I have two ideas.
  • Idea 1: Creates buttons from the first but make the button invislble in a startup function.
% Code that executes after component creation
function startupFcn(app)
app.Button.Visible = 'off';
end
Then, make the button visible at the timing when you want.
app.Button.Visible = 'on';
I think this approach is bettter than idea 2 because you can control the layout and
  • Idea 2: Create a button programmically
You can create a button by "uibutton". But you need to locate a new button properly by setting Postion.
The following example will create a button 120px right to the existing Button1.
% Button pushed function: Button
function ButtonPushed(app, event)
pos = app.Button.Position;
app.Button1 = uibutton(app.UIFigure, 'push');
app.Button1.Position = [pos(1)+120 pos(2) pos(3) pos(4)];
app.Button1.ButtonPushedFcn = {@mybuttondown,app};
% Button push function for a new button
function mybuttondown(src,eve,app)
msgbox('Hello')
end
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Develop Apps Using App Designer 的更多信息

产品


版本

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by