フィルターのクリア

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

25 ビュー (過去 30 日間)
Rohan Kadambi
Rohan Kadambi 2024 年 6 月 28 日 16:03
コメント済み: Rohan Kadambi 2024 年 6 月 28 日 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'.

採用された回答

Adam Danz
Adam Danz 2024 年 6 月 28 日 17:52
編集済み: Adam Danz 2024 年 6 月 28 日 17:52

その他の回答 (1 件)

Umar
Umar 2024 年 6 月 28 日 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.

カテゴリ

Help Center および File ExchangeDevelop uifigure-Based Apps についてさらに検索

製品


リリース

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by