How can I update the results from a Timer to a text box every 5 second?

3 visualizzazioni (ultimi 30 giorni)
My codes are shown as below:
TimeSpan = str2double(get(handles.edit1,'String'));
Parameter = str2double(get(handles.edit2,'String'));
My function is
funcion Output=MyFuc(Parameter)
Output=sin(Parameter);
end
How can I show 'Output' in textbox ('edit3') every 5 seconds (let's say TimeSpan=5);
So many thanks. I've been working on this for 2 days. Still cannot find correct answer....
Many thanks to everyone helping me.

Risposta accettata

Sean de Wolski
Sean de Wolski il 4 Feb 2013
h = uicontrol('Units','Normalized','FontSize',15,'Position',[0.1 0.1 0.8 0.8],...
'Style','Text');
drawnow;
T = timer('Period',5,'StartDelay',0,'TimerFcn',@(src,evt)set(h,'String',evalc('why')),...
'ExecutionMode','FixedRate');
start(T)
  3 Commenti
Matt Tearle
Matt Tearle il 4 Feb 2013
What's missing from what Sean gave? Your timer callback function will have to be something like this:
@(~,~) set(handles.edit3,'String',num2str(MyFuc(str2double(get(handles.edit2,'String')))))
Each time this is called, it reads the value in edit2, passes that to your function, and sets the value in edit3 to be the result.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Environment and Settings in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by