I am using ‘appdesigner’, I would like to programmatically scroll to the bottom of a TextArea, is this possible?
14 views (last 30 days)
Show older comments
I am using ‘appdesigner’.
I would like to programmatically scroll to the bottom of a TextArea, is this possible?
My text area is being used a "console log".
Thanks, Gregg
1 Comment
Eric Sargent
on 9 Dec 2020
As of R2020b uitextarea now supports scroll.
In this case you could use:
scroll(textArea, 'bottom')
Answers (4)
Michael Corbett
on 12 Oct 2018
To accomplish a scrolling text area, I did the following:
- Create the Text Area with 3 lines high (or as many as you'd like).
- Create a public consoleObj object using
properties (Access = public)
consoleObj
end
- On startup, write lines one and two (change to whatever appropriate):
app.consoleObj.line1 = 'Console Started';
app.consoleObj.line2 = 'System ready';
app.consoleObj.line3 = '';
app.ConsoleTextArea.Value = {app.consoleObj.line1;app.consoleObj.line2;app.consoleObj.line3};
- Wrote a function that would replace line1 with line2, line2 with line3, then add the new line3 and display:
methods (Access = public)
function writeConsoleLine(app,lineIn)
app.consoleObj.line1 = app.consoleObj.line2;
app.consoleObj.line2 = app.consoleObj.line3;
app.consoleObj.line3 = lineIn;
app.ConsoleTextArea.Value = {app.consoleObj.line1;app.consoleObj.line2;app.consoleObj.line3};
end
- Call the function to display the new text.
writeConsoleLine(app,'Pushbutton pressed');
3 Comments
Jan
on 14 Feb 2019
@Marko: Please use flags only to inform admins and editors about content, which might conflict with the terms of use, like spam or rudeness. Thanks.
If this answer solves your problem, "accept" it instead of setting a flag.
Samuel Salinas
on 12 Jun 2020
I tried the same approach but the "app.ConsoleTextArea.Value" field demands a string scalar or charcater vector, not a cell.
How do I go around this?
Joshua Welsh
on 16 Apr 2018
Put your text into a ListBox instead of text area and then use the scroll function:
scroll(app.ListBox, 'bottom')
3 Comments
Rayan Alkashgari
on 7 Mar 2019
This works in Matlab 2018b. Make sure to pause after adding an item then execute:
app.ListBox.scroll('bottom')
Cool_CZ
on 25 Mar 2019
Thanks Rayan! That works for me(R2018b), just add "drawnow" before above command.
Han Geerligs
on 9 Jun 2017
Hi Gregg,
I have the same question. Do you have any solution already?
regards, Han
0 Comments
Eric Sargent
on 9 Dec 2020
As of R2020b uitextarea now supports scroll.
In this case you could use:
scroll(textArea, 'bottom')
0 Comments
See Also
Categories
Find more on Downloads in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!