- 1、本文档共66页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MATLABGUI界面设计课件.ppt
* 上述图形界面设计运行后显示的图形如下: 其设置如右图所示 * (二)设置控件的标识 (三)编写代码 GUI图形界面的功能,还是要通过一定的设计思路和计算方法,由特定的程序来实现。为了实现程序的功能,还需要在运行程序前编写一些代码,完成程序中变量的赋值、输入输出、计算及绘图等工作。 本例设置第一个坐标轴的标识为:frequency_axes, 用于显示频域图形; 第二个坐标轴的标识为:time_axes, 用于显示时域图形。三个文本编辑框的标识为f1_input, f2_input, t_input,分别用于输入两个频率和自变量时间的间隔。由于不需要返回3个静态文本框和按钮的值,这些控件的标识可以使用缺省值。 * (1) 从GUI获得用户输入的数据。本例中输入的3个数据分别为频率1、频率2和时间间隔。 f1=str2double(get(handles.f1_input,String)); f2=str2double(get(handles.f2_input,String)); t=eval(get(handles.t_input,String)); 1. 设置对象的初始值 分别设置三个文本编辑框的初始值为: f1_input=20 f2_input=50 t_input=0:0.001:0.5 2. 编写代码 为按钮的调用函数编写代码,这段代码放在按钮的调用函数pushbutton1_Callback()中,代码包括以下部分: * (2)计算数据。计算函数值,按指定点进行快速傅立叶变换,并计算频域的幅值和频域分辨率。 x=sin(2*pi*f1*t)+sin(2*pi*f2*t); y=fft(x,512); % 采样点数N取2的整数次(29) m=y.*conj(y)/512; f=1000*(0:256)/512; % 采样频率为1000 (3)在第一个坐标轴中绘制频域曲线。 axes(handles.frequency_axes) plot(f,m(1:257)) set(handles.frequency_axes,XminorTick,on) grid on (4)在第二个坐标轴中绘制时域曲线。 axes(handles.time_axes) %选择适当的坐标轴 plot(t,x) set(handles.time_axes,XminorTick,on) grid on 3. 运行程序 * BackgroundColor取值为颜色的预定义字符或RGB数值;缺省值为浅灰色; Callback取值为字符串,可以是某个M文件名或一小段Matlab语句,当用户激活某个控件对象时,应用程序就运行该属性定义的子程序; Enable取值为on(缺省值),inactive和off; Extend取值为四元素矢量[0, 0, width, height],记录控件对象标题字符的位置和尺寸; ForegroundColor取值为颜色的预定义字符或RGB数值,该属性定义控件对象标题字符的颜色;缺省值为黑色; Max,Min取值都为数值,缺省值分别为1和0; String取值为字符串矩阵或块数组,定义控件对象标题或选项内容; Style取值可以是pushbutton(缺省值), radiobutton, checkbox, edit, text, slider, frame, popupmenu 或listbox; Units取值可以是pixels (缺省值), normalized(相对单位), inches, centimeters(厘米)或points(磅); Value取值可以是矢量,也可以是数值,其含义及解释依赖于控件对象的类型。 2)控件对象的基本控制属性 * FontAngle取值为normal(正体,缺省值), italic(斜体), oblique(方头); FontName取值为控件标题等字体的字库名; FontSize取值为数值; FontUnits取值为points(缺省值), normalized, inches, centimeters或pixels; FontWeight取值为normal(缺省值), light,demi和bold,定义字符的粗细; HorizontalAligment取值为left,center (缺省值) 或 right,定义控件对象标题等的对齐方式。 3) 控件对象的修饰控制属性 * ListboxTop取值为数量值,用于listbox控件对象; SliderStep取值为两元素矢量[minstep,maxstep],用于slider控件对象; Selected取值为on 或off(缺省值) ; SlectionHighlight取值为on 或o
文档评论(0)