How to wrap text within buttons of app-designer

12 Ansichten (letzte 30 Tage)
Leon
Leon am 19 Okt. 2019
Kommentiert: Adam Danz am 30 Apr. 2021
Is there a way I can chose to wrap the text in my button to a 2nd row, instead of letting it to overflow outside my button?
Thanks!

Akzeptierte Antwort

Adam Danz
Adam Danz am 19 Okt. 2019
Bearbeitet: Adam Danz am 30 Apr. 2021
You can make set multi-lined text in a button from within the startup function startupFcn().
The first line below creates two lines of text within the button.
The second line moves the button down and doubles its vertical size. Set the button width and the position of the top of the button from the DesignView.
% Code that executes after component creation
function startupFcn(app, arg1)
app.Button.Text = ['Really long',newline,'button name']; % or sprintf('Really long\nbutton name')
app.Button.Position([2,4]) = app.Button.Position([2,4]) + [-1,1].*app.Button.Position(4);
% If you'd rather the button size to expand upward rather than downward,
% Replace the 2nd line above with
% app.Button.Position(4) = app.Button.Position(4)*2;
end
Update
As of R2020b multi-line text in buttons can be achieved from Design View (thanks Eric Sargent).
  4 Kommentare
Eric Sargent
Eric Sargent am 9 Dez. 2020
As of R2020b components that support multiline text now support WordWrap, including uibutton.
uilabel, uitextarea, uibutton, uitogglebutton, uicheckbox, uiradiobutton
Adam Danz
Adam Danz am 30 Apr. 2021
Thanks Eric, I updated my answer to increase visibility.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Eric Sargent
Eric Sargent am 9 Dez. 2020
As of R2020b components that support multiline text now support WordWrap, including uibutton.
uilabel, uitextarea, uibutton, uitogglebutton, uicheckbox, uiradiobutton

Produkte


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by