matlab的GUI中,怎么修改参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab的GUI中,怎么修改参数相关的知识,希望对你有一定的参考价值。
如图,我现在点击开始,可以生成T=6,12,18的曲线,但是我现在想要自己设定T的数值,也就是通过右上角那个(如果那个不可以请大神指教用什么模块)修改T的数值,然后生成曲线,请问该怎么设置,请说的详细一点,最好有代码,下面的是我这个图片的代码
num=[20]; den=[6,15]; impulse(num,den,'-k') hold on num=[20]; den=[12,15]; impulse(num,den,'--r') hold on num=[20]; den=[18,15]; impulse(num,den,'-.g') grid legend('T=6','T=12','T=18')
1.只需要把数值给FS即可 可以用global定义
2. 用callback函数就可以实现。同时,也不用global定义,用handles就可以。
Matlab的GUI参数传递方式
1.运用gui本身的varain、varaout传递参数(注:这种方式仅适用与gui间传递数据,且只适合与主子结构,及从主gui调用子gui,然后关掉子gui,而不适合递进结构,即一步一步实现的方式)。
2. 运用global定义全局变量传递参数(适用于gui内控件间以及不同gui间) 。
3. 运用UserData传递参数(gui内) 。
4.应用setappdata\getappdata与rmappdata函数(gui间和gui内,推荐使用) 。
5.结合handles和guidata函数(gui内,不推荐使用,经常出现问题,比如在handles中添加了变量对象Y后可能就会挤掉handles另外一个对象) 。
6. 运用save和load(importdata)传递参数(gui内和gui间)。 参考技术A
那个控件是编辑框,先用get函数获取编辑框的内容,然后用str2num转换为数值类型,再画图就可以了,大致的代码是:
s = get(handles.edit1,'str');T = str2num(s);
.....
其中handles.edit1是编辑框控件的句柄,对于你这个图默认应该是这样的名字,如果不是,请自行修改。
追问这个语句加在哪里?我放在开始按钮的CALLBACK里面不行呀,然后上面画图那个M文件里面的T用不用修改?
追答1、怎么个不行法?具体现象你不说,怎么帮你?
2、GUI不仅仅是m文件,还有对应的fig文件。你最好把文件打包传到网盘,才好帮你分析。
3、T当然要修改,我给你的代码只是让你可以从界面获得数据,后面再怎么用数据是你的事。
以上是关于matlab的GUI中,怎么修改参数的主要内容,如果未能解决你的问题,请参考以下文章