Borrar filtros
Borrar filtros

How do you set the Layout Option at construction for ui objects?

25 visualizaciones (últimos 30 días)
Rohan Kadambi
Rohan Kadambi el 28 de Jun. de 2024 a las 16:03
Comentada: Rohan Kadambi el 28 de Jun. de 2024 a las 20:21
If I have a simple uifigure like:
fh = uifigure;
gl = uigridlayout(fh);
I can add a uicomponent (and specify where on the gridlayout it will sit) like:
btn = uibutton(gl, Text="Hello World");
btn.Layout.Row = 2;
btn.Layout.Column = 2;
Is it possible to set the layout options using the Layout property of the btn e.g.
btn = uibutton(gl, Text="Hello World", Layout=???);
Sending a struct like:
btn = uibutton(gl, Text="Hello World", Layout=struct('Row',2,'Column',2);
Gives the error:
Error setting property 'Layout' of class 'Button':
'Layout' value must be specified as a
matlab.ui.layout.LayoutOptions object.
But I can't seem to instantiate an instance of the class LayoutOptions as:
l = LayoutOption();
Gives the error:
Unrecognized function or variable 'LayoutOption'.

Respuesta aceptada

Adam Danz
Adam Danz el 28 de Jun. de 2024 a las 17:52
Editada: Adam Danz el 28 de Jun. de 2024 a las 17:52

Más respuestas (1)

Umar
Umar el 28 de Jun. de 2024 a las 16:12
Hi Rohan,
By using uilayout.GridLayoutOptions to create a LayoutOptions object, you can set the row and column properties before assigning it to the button's Layout property. Here's the corrected approach to set layout options for a button in a grid layout:
fh = uifigure;
gl = uigridlayout(fh);
% Create a LayoutOptions object
layoutOptions = uilayout.GridLayoutOptions;
layoutOptions.Row = 2; layoutOptions.Column = 2;
% Add a button with specified layout options
btn = uibutton(gl, 'Text', 'Hello World', 'Layout', layoutOptions);
Hope this answers your question.

Categorías

Más información sobre Develop uifigure-Based Apps en Help Center y File Exchange.

Productos


Versión

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by