guide图形界面编程。
matlab技术支持搜索网站
这个玩意比较复杂,想到啥写啥吧,后续慢慢补。
GUI数据的跨控件传递
有三种方法可供选择。
1.使用global指令
在需要用到数据的地方对其进行全局声明。
function collect_Callback(hObject, eventdata, handles)
global f
……
function calculate_Callback(hObject, eventdata, handles)
global f
……
2.使用公用的结构体handles
function collect_Callback(hObject, eventdata, handles)
handles.f=f; %创建
guidata (hObject, handles); %更新handles
……
function calculate_Callback(hObject, eventdata, handles)
f=handles.f; %使用
……
3.使用setappdata()和getappdata()
function collect_Callback(hObject, eventdata, handles)
setappdata(0,'array',f);
%0表示根对象,这样做可以在不同的窗口调用数据同时不受gcf可能发生的变换的影响。
……
function calculate_Callback(hObject, eventdata, handles)
f=getappdata(0,'array');
%取出数据使用
……
定时器的使用
t = timer(Name,Value)→使用由一个或多个 Name,Value 对组参数指定的其他选项创建 timer 对象t。
举例:输入代码
mtimer=timer('StartFcn',@init,'StartDelay',3,'TimerFcn',@paint, 'StopFcn',@clear,'Period',0.5,'executionmode','fixedSpacing','TasksToExecute',inf);
%'StartFcn' 在计时器启动时应执行的函数。(计时前,开启后)
%'StartDelay' 以秒为单位指定启动计时器和首次执行 TimerFcn 中指定的函数之间的延迟。
%'StopFcn' 在计时器计时结束后时应执行的函数。
%'TimerFcn' 定时器回调函数,计时器记到则调用函数。
%'Period' 定时器定时时间。
%'executionmode' 如何排定回调函数的执行和定时器的启动,如 'fixedSpacing' 表示在计时器回调函数完成执行时启动。
%'TasksToExecute' 定时器执行回调函数的次数,默认为inf。
start(mtimer); %开始计时。
……
stop(mtimer); %停止计时。
……
delete(mtimer); %删除计时器对象。