GUI界面设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4.2 图形用户界面的打开和初步设计
在Matlab命令行运行guide命令打开图形用户启动界面GUIDE Quick Start对话框,选择Blank GUI(Default),单击“OK”按钮,新建一个图形用户界面设计界面,如图4-1所示。
图4-1 图形用户界面的新建
根据本实验的具体要求和图形用户界面的设计原则,将主界面命名为“kaishi”,如图4-2Static Text,双击控件可引出图形窗和相应控件的属性编辑框“Property Inspector”,其属性设置为欢迎进入数字基带传输系统的仿真,字体大小可设置为16号,另外在工作区放置两个“Push Button”按钮,分别双击这两个控件可引出图形窗和相应控件的属编辑框“Property Inspector”,在String一栏中修改各个控件的名称分别为进入和关闭,字体大小可设置为16号。如图4-3示的主界面和属编辑框“Property Inspector”。
图4-2 总界面
图4-3 设置开始界面
4.3 主界面的激活和回调函数的生成
经以上操作后,工作台上所制作的界面外形及所含构件已经符合设计要求,但这个界面各构件之间的通讯还没有建立,为此必须激活处理。
激活方式为:选中其中的一个控件,如“眼图”控件,右击控件选择“View Callback”中的“callback”可出现一个可以(待填写回调指令的)M函数文件的文件编辑器界面,在待填写回调指令处填写语句figure(yantu),其余控件依此类推分别在指令处填写figure(digital),figure(digital_receive),figure(mjcr),figure(raise),figure(partrespond)其中digital,digital_receive,mjcr,raise,yantu,partrespond为显示数字基带传输过程中各过程波形的图形用户界面,这样就和其他的子界面之间建立了通信,回调函数如下填写:
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
figure(digital)
回调函数编写完成后,点击保存按钮进行保存,点击工作台上的“Activate Figure”工具图标,便可以看到链接关系,如图4-4示。
图4-4 写完成的总界面
上面我们已经编写完了回调函数,所以要想看到如何链接,只需点击各个按钮,如点击码型及功率谱密度,将出现如图4-5示的图形。
图4-5 接后产生的界面
4.4 子界面的激活和回调函数的生成
子界面的编制过程和主界面的编制过程类似,在编辑区放置几个“Push Button”按钮,分别双击这几个控件可引出图形窗和相应控件的属编辑框“Property Inspector”,在String一栏中修改各个控件的名称分别为输入双极性信号,信道传输,接收滤波后输出,抽样判决,恢复信息,返回,然后在子界面上设置一个Edit Text,改变其属性,在属性中的Tag一栏中分别填写alpha(滚降系数),在上面用Static Text标注,然后激活各个按钮建立连接。
激活方式为:选中其中的一个控件,如“输入双极性信号”控件,右击控件选择“View Callback”中的“callback”可出现一个可以(待填写回调指令的)M函数文件的文件编辑器界面,在待填写回调指令处填写语句,其回调语句为:function pushbutton5_Callback(hObject, eventdata, handles);
% eventdata reserved - to be defined in a future version of MATLAB;
% handles structure with handles and user data (see GUIDATA);
x=(sign(randn(1,100))+1)/2;
grid=8;
t=0:1/grid:length(x);
for i=1:length(x)
if(x(i)==1),
for j=1:grid,
y((i-1)*grid+j)=1;
end
else
for j=1:grid,
y((i-1)*grid+j)=-1;
end;end; end
y=[y,x(i)];
M=max(y); m=min(y);
plot(t,y);
axis([0 20 -1.2 1.2]);
guest用户权限设置
其他的按钮都按照此方法去激活。
经过以上步骤生成的图形用户界面就可以投入使用。只要M文件在当前目录或在Matlab搜索路径上,在Matlab命令窗口输入对应的M文件,就能打开如图4-5所示的图形用户界面。在此界面上可以进行相关的操作。
点击图4-4中的任意一个按钮便可建立链接,如点击码型及功率谱密度按钮后链接到的图,就可以出现各种码型的选择界面,若想返回到主界面观察其余传输过程的波形图即可点击返回按钮。
其中返回按钮的回调函数程序:
function pushbutton7_Callback(hObject, eventdata, handles);
% hObject handle to pushbutton7 (see GCBO);
% eventdata reserved - to be defined in a future version of MATLAB;
% handles structure with handles and user data (see GUIDATA);
figure(zongjiemian);
delete(handles.figure1)