通信系统仿真(一些简单的MATLAB函数学习)(菜单与控制界面)(五)

一、控制界面

用户接口控制(User interface controls) 图形对象的简称
H=uicontrol (‘Property’,PropertyValue)

1.主要属性

Style(类型) Callback(回调函数)Position(位置) String(字符串)Max(最大值) Min(最小值)Value(数值)

2.控制框类型(Style)

Push buttons(按钮)
Radio buttons(无线按钮 )
Popup menus(下拉菜单)
Checkboxes(检查框)
Editable text fields(编辑框)
Sliders(滑标)
Frame(框架)
Static Text(静态文本)
Edit Text (可编辑文本)

例:

hfigure=figure('Menubar','none','toolbar','none','position',[400 400 400 400]);
h=axes('position',[0.1 0.5 0.7 0.4]);
x=0:0.5:7;
y=sin(x);
e=plot(x,y);
title('y=sin(x)');
xlabel('自变量x');
ylabel('函数值y');
htext=uicontrol('Style','push','string','红色','fontsize',10,'position',[50 0 50 30],'callback','set(e,''color'',''r'');');
htext=uicontrol('Style','push','string','蓝色','fontsize',10,'position',[150 0 50 30],'callback','set(e,''color'',''b'');');
htext=uicontrol('Style','push','string','圆圈','fontsize',10,'position',[250 0 50 30],'callback','set(e,''marker'',''o'');');
htext=uicontrol('Style','push','string','加号','fontsize',10,'position',[50 50 50 30],'callback','set(e,''marker'',''+'');');
htext=uicontrol('Style','push','string','实线','fontsize',10,'position',[150 50 50 30],'callback','set(e,''lines'',''-'');');
htext=uicontrol('Style','push','string','绿色','fontsize',10,'position',[250 50 50 30],'callback','set(e,''color'',''g'');');
htext=uicontrol('Style','push','string','虚线','fontsize',10,'position',[50 100 50 30],'callback','set(e,''lines'',''--'');');
htext=uicontrol('Style','push','string','星号','fontsize',10,'position',[150 100 50 30],'callback','set(e,''marker'',''*'');');
htext=uicontrol('Style','push','string','无线','fontsize',10,'position',[250 100 50 30],'callback','set(e,''lines'',''none'');');
uicontrol('Style','push','string','setting','fontsize',10,'position',[0 -100 150 30],'callback','uicontrol(htext)');

图片:
在这里插入图片描述

二、菜单界面

1. Uimenu对象

创建自定义菜单对象或菜单选项
uimenu 函数
H=uimenu (‘Property’,PropertyValue)

Property内容
• Label (菜单名)
在字符串前加入&字符,可以实现用Alt键加该字符键来激活相
应的菜单项。
• Callback(回应)
属性值为由MATLAB命令和函数构成的字符向量。
• Seperator(分隔符)
• Accelerator (快捷键)
取值是任何字母,用于定义没有次级菜单的菜单项快捷键
• Enable
on/off,控制菜单选项的可选择性
• Position
取值为数值,定义菜单项在菜单组内的相对位置

2. Uicontextmenu对象

创建右键菜单对象
uicontextmenu 函数
h=uicontextmenu
若要创建右键菜单的菜单选项,可使用uimenu函数:
h1=uimenu(h,’PropertyName’, PropertyValue)

例子:

hfigure=figure('Menubar','none','toolbar','none','position',[400 400 400 400]);
x1=-1:0.1:1;
x2=0:0.1:3*pi;
y1=x1.^2;
y2=cos(x2);
c=subplot(2,1,1);
a=plot(x1,y1);
title('抛物线');
d=subplot(2,1,2);
b=plot(x2,y2);
title('余弦曲线');
h=uicontextmenu
uimenu(h,'label','red','callback','set(a,''color'',''r'');');
uimenu(h,'label','green','callback','set(a,''color'',''g'');');
uimenu(h,'label','yellow','callback','set(a,''color'',''y'');');
uimenu(h,'label','linewidth1.5','callback','set(a,''linew'',1.5);');
uimenu(h,'label','linestyle*','callback','set(a,''marker'',''*'');');
uimenu(h,'label','linestyle:','callback','set(a,''lines'','':'');');
uimenu(h,'label','marker','callback','set(a,''lines'',''none'');');
set(c,'uicontextmenu',h);

h=uicontextmenu
uimenu(h,'label','red','callback','set(b,''color'',''r'');');
uimenu(h,'label','crimeson','callback','set(b,''color'',''c'');');
uimenu(h,'label','black','callback','set(b,''color'',''k'');');
uimenu(h,'label','linewidth1.5','callback','set(b,''linew'',1.5);');
uimenu(h,'label','linestyle*','callback','set(b,''marker'',''*'');');
uimenu(h,'label','linestyle:','callback','set(b,''lines'','':'');');
uimenu(h,'label','marker','callback','set(b,''lines'',''none'');');
set(d,'uicontextmenu',h);

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

daijingxin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值