how to change static text in MATLAB GUI?

 Accepted Answer

First make up your string. Then set the 'String' property of the static text control to that string with the set() command. If it's in an intensive loop, you might have to use drawnow to get it to update immediately.
myString = sprintf('Hello world!\nThe value is %d', someVariable);
set(handles.text1, 'String', myString);
drawnow; % Needed only if this is in a fast loop.

7 Comments

@image analyst: your code is more simple. thanks sir !
It's even simpler if you use OOP syntax:
handles.text1.String = myString; % Do it like this instead of using set()
Thans a lot. Thats very helpful
@Image Analyst
Is there a way to permanently edit the static text, so that when launch the GUI again some other time, the text will be the updated one?
You can save the new value in a .mat file,
save('app settings.mat', 'myString');
then when your startup code runs again, load() the mat file and assign the prior/saved string to the control.
myString = load('app settings.mat', 'myString'); % Get string from mat file.
handles.text1.String = myString; % Send string to static text control on GUI.
Thanks, I was planning to save the string in a text file, This seems like a better idea.
If you want to bind the defaults to your copy of Matlab instead of the current folder, you can use setpref and getpref.

Sign in to comment.

More Answers (1)

A very basic example:
f = figure;
t = uicontrol(f,'Style','text',...
'String','Select a data set.',...
'Position',[30 50 130 30]);
t.String = 'hello World';
This changes the static text from 'Select a data set.' to 'hello World'
Basically, all you are doing is changing the string property in an object that is of style text .
Does that help?

Categories

Products

Asked:

on 7 Jul 2015

Commented:

Rik
on 8 Feb 2020

Community Treasure Hunt

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

Start Hunting!