matlab gui 项目,Matlab的GUI编程入门项目一:常用三角函数的绘制

Matlab入门一个星期啦,记录一下入门以来的第一个GUI(Graphical User Interface)的第一个例子;

首先,GUI编程在matlab中也是两种方式,一种是直接用代码控制各种控件和实现逻辑;另外一种,也是我们新手入门的捷径:通过GUIDE向导完成。这个类似于Android的Layout的实现方式。下面开始正题:

1,截面布局

新建一个GUI空白项目;

2f7451895716f6a6faa307e283aa7e8b.png

进入布局编辑器之后,根据程序目标设计各控件(力求简洁):

46232d107922554077ee130aed168e89.png

2.逻辑代码及回调函数的实现;

可以通过右键单击控件,View callbacks进入callbacks回调函数编写界面:

需要声明的是:matlab的回调函数和Android等其他编程语言一样,通过控件的唯一标识(tag)绑定回调函数,Android控件唯一标识为Id;

以下是我们主要的绘图函数回调的代码:通过对RadioButton的状态判断,执行绘图;

% --- Executes on button press in pushbutton_draw.

function pushbutton_draw_Callback(hObject, eventdata, handles)

% hObject handle to pushbutton_draw (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

x0 = str2num(get(handles.editstart,'string'));

x1 = str2num(get(handles.editstep,'string'));

x2 = str2num(get(handles.editfinal,'string'));

x= [x0:x1:x2];

if get(handles.radiobuttonsin,'value')

hline = plot(x,sin(x));

elseif get(handles.radiobuttoncos,'value')

hline = plot(x,cos(x));

elseif get(handles.radiobuttontan,'value')

hline = plot(x,tan(x));

elseif get(handles.radiobuttoncot,'value')

hline = plot(x,cot(x));

end

handles.lines =hline;

guidata(hObject,handles);

这是主要代码块,其他的Menu Bar实现也是类似的方式;

最后程序的输出为:

sin:

d56ed876f852753a9db3d1dd3cbc20ed.png

菜单栏中实现线条颜色的改变,结果如下:

2277289dc8ec56d8df5fe4b21ffb8651.png

cos:

fe4593fea8c2756ceb525b24146c4688.png

总结:通过老师的督促,学习进度很快!本实例自己完全手写,结果还是很满意满足的;但程序中依然有待改善的地方;比如:radiobutton的ButtnGroup中还是没有实现打包操作,单选按钮实际成了多选按钮;

加油!!改进!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值