在matlabgui中创建tic/toc向量
我使用Matlab中的GUIDE功能构建了一个GUI。我有很多按钮。我通过单击一个按钮开始在matlabgui中创建tic/toc向量,matlab,user-interface,matlab-guide,Matlab,User Interface,Matlab Guide,我使用Matlab中的GUIDE功能构建了一个GUI。我有很多按钮。我通过单击一个按钮开始tic。然后,当我单击任何其他按钮时,我想构建一个toc时间戳的向量。我该怎么做 最健壮的解决方案是在GUI的句柄结构中存储和操作向量。首先,在“创建函数”中,初始化开始和停止向量: function yourGui_CreateFcn ( hObject , eventdata , handles ) % Initialize the start and stop vectors. handles
tic
。然后,当我单击任何其他按钮时,我想构建一个toc
时间戳的向量。我该怎么做 最健壮的解决方案是在GUI的句柄结构中存储和操作向量。首先,在“创建函数”中,初始化开始和停止向量:
function yourGui_CreateFcn ( hObject , eventdata , handles )
% Initialize the start and stop vectors.
handles.timeStart = [];
handles.timeStop = [];
% Update the GUI handles structure.
guidata ( hObject , handles );
end
然后,在第一个按钮中,启动计时器并将其存储到句柄向量中
function button1_Callback ( hObject , eventdata , handles )
% Start the timer, updating the value in the handles structure.
handles.timeStart = tic;
% Update the GUI data so that timer is available to other functions.
guidata ( hObject , handles );
end
接下来,在每个其他按钮回调中,从handles结构中检索开始时间并确定经过的时间:
function button2_Callback ( hObject , eventdata , handles )
% Retrieve the start time.
timeStart = handles.timeStart;
% Determine the elapsed time.
timeElapsed = toc ( timeStart );
% Store the new value in the handles structure.
handles.timeStop(end+1,1) = timeElapsed;
% Update the guidata.
guidata ( hObject , handles );
end
最后,您可以使用“输出函数”从GUI输出值
然后使用命令行中的以下语句执行gui:
>> [timeStart,timeStop] = yourGui ( );
新时间(currentCounterValue1+1)=toc;assignin('base','output_to_workspace',newTime)-->仅获取最新的newTime和0,其他时间我按下按钮。@sajawa:在
assignin
之前设置断点。代码创建一个新变量,然后覆盖基本工作区中以前的内容;如何将newTime初始化为变量?我一直收到未定义变量“newTime”的错误。谢谢,这帮了大忙。
>> [timeStart,timeStop] = yourGui ( );