Effacer les filtres
Effacer les filtres

Automatically update a string in GUIDE textbox

2 vues (au cours des 30 derniers jours)
Jeffrey Alido
Jeffrey Alido le 21 Juil 2017
Commenté : Image Analyst le 28 Juil 2017
I would like to be able to press a button and have the text field of a static textbox automatically update as a variable changes within a function.
I have some timer function:
function stopwatch
global t
for i = 1:10
clc;
t = tic
pause(1)
end
and the GUI callback function for the pushbutton:
function pushbutton1_Callback(hObject, eventdata, handles)
stopwatch
global t
set(handles.text2,'string',t)
but the textbox only updates once the loop is finished. How do I make it so that the textbox is updated automatically continuously?
Thanks!

Réponses (2)

Stephen23
Stephen23 le 21 Juil 2017
Modifié(e) : Stephen23 le 21 Juil 2017
You will need to set the text string inside the loop. For example (untested):
function stopwatch(h)
for k = 1:10
pause(1);
set(h,'string',tic)
end
end
function pushbutton1_Callback(hObject, eventdata, handles)
stopwatch(handles.text2)
or even all in one function:
function pushbutton1_Callback(~, ~, handles)
for k = 1:10
pause(1);
set(handles.text2,'string',tic)
end
end
  1 commentaire
Jeffrey Alido
Jeffrey Alido le 21 Juil 2017
Is there a way to do it while keeping the stopwatch function in a separate .m file?

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 21 Juil 2017
Have stopwatch take handles as an input and set it in there and call drawnow:
global t
for i = 1:10
clc;
t = tic
handles.text2.String = sprintf('Starting Time = ', t);
drawnow;
pause(1)
end
Not sure that makes sense to use tic though. You're starting 10 timers but saving only the starting time of the very last timer. Why????
  8 commentaires
Jeffrey Alido
Jeffrey Alido le 28 Juil 2017
I'm still a beginner so I am unsure what the code would all look like. Could you help from here?
So far I have my timer.m function:
function timer
for i = 1:15
clc;
i
pause(1)
end
And I'd like to press a pushbutton in the GUI so that a static textbox displays the timer live.
Thanks!
Image Analyst
Image Analyst le 28 Juil 2017
I'd rather not give code for an approach that I don't recommend.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Environment and Settings dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by