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

3 visualizaciones (últimos 30 días)
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.

Respuesta aceptada

Sean de Wolski
Sean de Wolski el 4 de Feb. de 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 comentarios
Matt Tearle
Matt Tearle el 4 de Feb. de 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.
Zheng
Zheng el 4 de Feb. de 2013
it works now. Thank you very much... :-)

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Environment and Settings en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by