gui编程matlab
A. 如何在matlab gui写程序
1.首先,我们新建一个GUI工程,在弹出来的界面中选择Blank GUI. 如图所示
B. 如何使用matlab制作GUI界面
对于图像处理来说,matlab有着巨大的优势,visual
c++常用来制作人机交互界面,其实matlab制作gui界面是十分简单的,只需要如下操作:
1、在输入行:guide显示界面如下:
2、选择创建新的gui,然后选择创建一个空的gui,同时注意保存的路径
3、左边有许多控件:如按钮,在左边点击ok按钮,然后在右边网格区域点击一下即可(或者直接将ok按钮拉过去)。
4、push
button按钮,双击此按钮
,会显示属性界面,然后就可以修改此按钮的各种属性:
5、可以修改按钮的名字等信息。
6、右击按钮,可以选择view
callbacks中的callback即可进行一个函数,此函数当点击按钮的时候就会被调用,在此函数中添加命令:msgbox('你好');
7、然后点击此按钮就可以显示所想显示的内容。
C. matlab gui是面向对象编程吗
是的。
面向过程的编程是一种以过程为核心的编程算法,把问题的过程按照步骤分解出来,然后用函数形式加以实现。
面向过程编程方法的优点是简单快捷,缺点是面对复杂的程序难以修改和维护。
面向对象编程的优点是把大问题分解成小的对象,通过组合和信息传递完成任务,通过继承达到代码的复用,修改或添加模块不会影响到其他模块。
面向过程编程的局限性是不容易维护和扩张。大多数情况下,如果已有了面向过程的程序,可以用面向对象的思想去包装这些已有的程序,并且在此基础上继续维护和扩张已有的程序。。
D. matlab GUI编程
出错的原因:
所求出的阶跃响应h是在一些离散的时间点上才有值的,下面的这个条件:
abs(h(i)-0.39)<=0.0001
有些情况下不一定能保证能够满足。例如我们取
num1=1;
den1=[101];
delay1=0;
对于这组参数,t1和t2都可以计算出来。而如果我们取
den1=[11];
就会出现楼主所说的错误。事实上,如果在出错之前的位置我们加入一行代码:
min(abs(h-0.39))
就会得到
ans=
0.00018078309067282
显然,h中没有元素满足abs(h(i)-0.39)<=0.0001的条件,所以给t1赋值的语句始终不会执行。如果我们取
den1=[0.11];
则t2赋值的条件也不会满足,这时会报t2未定义了。
解决方法:
要确定阶跃响应取某个特定值的时间,通常的方法是,取与该值相差最小的那个时间,例如:
[tmp,idx2]=min(abs(h-0.63));
[tmp,idx1]=min(abs(h-0.39));
t2=t(idx2)
t1=t(idx1)
如果希望更精确,还可以利用最接近那个值的两个点插值,例如:
idx=find((h(1:end-1)-0.63).*(h(2:end)-0.63)<=0);
t2=t(idx)+(0.63-h(idx))*(t(idx+1)-t(idx))/(h(idx+1)-h(idx))
idx=find((h(1:end-1)-0.39).*(h(2:end)-0.39)<=0);
t1=t(idx)+(0.39-h(idx))*(t(idx+1)-t(idx))/(h(idx+1)-h(idx))
两种方法求出的点如图所示:
delay2=(2*t1-t2);
也是不严谨的,因为你很难保证2*t1一定会大于t2,如果不满足,则延迟时间为负,同样会出错(上面所举的第一个例子就是如此)。
E. 在线使用matlab的网站可以使用gui吗
摘要 一、进入GUI编程界面
F. matlab的GUI编程
初学的话,用向导比较上手快。
在命令行输入guide,打开matlab的界面向导。
拖入你需要的控件。
在对应的控件callback下写入你的代码。
%----------
1.我不知道如何用call
back来让run这个按键调用那个源程序
如果你的源程序是m文件,直接在callback下写上这个m文件名。(m文件放在同一目录下)
如果是exe文件,同样写下文件名,并在exe文件名前加个叹号(注意是英文格式)
2.如何把经过源程序处理过的图像分别显示到以上3个axes中
假设pic1,pic2是你组后处理完成的图像
axes(handles.axes1)
imshow(pic1)
%
axes(handles.axes2)
imshow(pic2)
3.如何把经过源程序计算过的那个数字结果显示到那个txt
number是你组后的结果数值。
set(handles.text1,'string',num2str(number));
text1是你的那个txt的tag名称。
G. 怎么用MATLAB做个简单的GUI
两个方法,要么直接利用GUI,可以查看help
gui,先设计界面。
要么直接自己用m文件写,比如写个pushbutton,就直接写
dataset_pushbutton
=
uicontrol(MainFigure
...
,'style','pushbutton'
...
,'value',1
...
,'string','写你的string'
...
,'units','normalized'
...
,'Position',[位置]
...
,'enable','on'
...
,'callback',你的回调函数);
最简单的就是找help里面的帮助,找个demo或者example,对照着做。