How to display multiple lines as output from code in edit text field in app designer

209 views (last 30 days)
Hi. I'm trying to display multiple lines as output from my code in the edit text field in app designer. I tried implementing the following way (test code).
app.double_results.Value = sprintf('Max velocity can be reached but 1st gear ratio can be increased\n');
app.double_results.Value = sprintf('%s \r\n %s',app.double_results.Value,'Hi');
But the two strings were not displayed in two lines as shown below.
How should I modify the commands to display the two strings as seperate lines?
Btw, I'm using Matlab 2018a.

Answers (5)

Kevin Chng
Kevin Chng on 17 Dec 2018
Edited: Kevin Chng on 17 Dec 2018
Hi, try this way
app.TextArea.Value = sprintf('Max velocity can be reached but 1st gear ratio can be increased\n');
app.TextArea.Value = [app.TextArea.Value;"hi"]
Accept my answer if it is working for you. Thanks
  5 Comments
Deepak Prakash K
Deepak Prakash K on 17 Dec 2018
Edited: Deepak Prakash K on 17 Dec 2018
Ok thanks. Please let me know if you're able to implement it with 2018a. I shall also try to figure out a way and will let you know if something works.

Sign in to comment.


Nathan Davey
Nathan Davey on 23 Jun 2020
This also works with the number inside the curly braces being which line in the text area you want to print on.
app.MessagesTextArea.Value{1} = ['SG Output Power = ' num2str(SGPower(pwr)) 'dBm'];
app.MessagesTextArea.Value{2} = ['Peak Power Ouput = ' num2str(output_power) 'dBm'];
app.MessagesTextArea.Value{3} = ['Drain Current = ' num2str(Id) 'A'];

António Tenreiro
António Tenreiro on 24 Jul 2019
Edited: António Tenreiro on 24 Jul 2019
Hello,
TextArea.Value can be various types of variables, as long as it is, or it contains a string or a character array. Of these types, one possible is to have a cell array of character values, as stated by the TextArea Properties page.
So the code I use is the following function in the app I am designing using App Designer.
function DisplayTextArea(app,message)
app.iTextBox = app.iTextBox + 1;
app.UserTextArea.Value(app.iTextBox) = {message};
end
Each time I want to add a line in the TextArea, I add one element in the Cell array variable and insert the line in that new element.

SnukeN3
SnukeN3 on 7 May 2020
This is how I solved this problem:
and the output:
There is a scroll bar on the left side of the TextArea to scroll through the results

Ana Gonçalves
Ana Gonçalves on 17 May 2022
l1 = 'my text';
l2 = 'some text'
result = sprintf([l1 '\n' l2])

Community Treasure Hunt

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

Start Hunting!