Resizing grid layout doesn't work in maximized WindowState

4 Ansichten (letzte 30 Tage)
John F
John F am 24 Mär. 2022
Beantwortet: John F am 24 Mär. 2022
I have created an App using the "2-panel App with Auto-Reflow" template and I want to change the width of the 2 panels. Here's the relevant code:
function startupFcn(app)
fig_position = app.UIFigure.Position;
fig_width = fig_position(3);
fig_height = fig_position(4);
app.GridLayout.ColumnWidth = {0.54*fig_width, 0.46*fig_width};
app.GridLayout.RowHeight = fig_height;
end
I have also set the WindowState property of the UIFigure element to 'maximized'. However, the panels don't have the correct width. What am I missing?

Akzeptierte Antwort

John F
John F am 24 Mär. 2022
Add "drawnow" at the beginning of the function like this:
function startupFcn(app)
drawnow
fig_position = app.UIFigure.Position;
fig_width = fig_position(3);
fig_height = fig_position(4);
app.GridLayout.ColumnWidth = {0.54*fig_width, 0.46*fig_width};
app.GridLayout.RowHeight = fig_height;
end

Weitere Antworten (0)

Kategorien

Mehr zu Develop Apps Using App Designer finden Sie in Help Center und File Exchange

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by