How to add a timer

5 ビュー (過去 30 日間)
John
John 2012 年 12 月 12 日
All I need is a simple timer that is displayed and counts up while a game is being played.

回答 (1 件)

Matt Fig
Matt Fig 2012 年 12 月 12 日
編集済み: Matt Fig 2012 年 12 月 12 日
Here is a simple example. You should be able to adapt the concepts to your GUI or whatever.
function [] = gui_timer()
% Make a GUI that counts by seconds...
S.fh = figure('name','gui_timer',...
'menubar','none',...
'numbert','off',...
'pos',[100 100 300 150],...
'closereq',@deleter);
S.tx = uicontrol('Style','text',...
'Units','pix',...
'Position',[10 10 280 130],...
'fontsize',60,...
'String','0',...
'backgroundc',get(S.fh,'color'));
S.tmr = timer('Name','TimerCounter',...
'Period',1,... %
'StartDelay',1,... % In seconds.
'TasksToExecute',inf,... % Do until delete
'ExecutionMode','fixedSpacing',...
'TimerFcn',@tmr_tmrfcn,... % Function def. below.
'StopFcn',@deleter); % Function def. below.
guidata(S.fh,S)
movegui('center')
start(S.tmr);
function [] = tmr_tmrfcn(varargin)
% Callback for timerfcn.
S = guidata(findall(0,'name','gui_timer'));
V = str2double(get(S.tx,'string'));
set(S.tx,'string',sprintf('%i',V+1))
function deleter(varargin)
% Callback for stopfcn and figure close.
T = timerfind('name','TimerCounter');
stop(T);
delete(T);
delete(findall(0,'name','gui_timer'))

カテゴリ

Help Center および File ExchangeInteractive Control and Callbacks についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by