《数学应用软件》试验(四)【句柄图形和图形用户界面制作】
更新时间:2023-06-03 14:19:01 阅读量: 实用文档 文档下载
- 小盒子数学应用软件推荐度:
- 相关推荐
《数学应用软件》实验指导书
2015年 7
月
实验四 句柄图形和图形用户界面制作
一、实验目的
1、 熟悉句柄图形体系的对象树结构。
2、 熟练掌握句柄图形体系的对象属性的创建、设置、查询。
3、 熟练掌握句柄的获取。
4、 熟练掌握图形用户界面(GUI)的制作。
二、实验内容
1、句柄的获取
gcf 、gca、gco、findobj、图形创建指令、追溯法等方法获取图形句柄的联系。常用的图形句柄操作函数如下表]
在command窗口键入以下指令:
>> X = linspace(-pi,pi,25);
>> Y = sin(X);
>> plot(X,Y,'rX');
>>gcf
>>gca
观察指令窗及图形窗中的结果。
2、句柄图形体系的对象属性的创建、设置、查询
在command窗口键入以下指令:
h_line = findobj(gca,'Marker','X')
get(h_line)
h_line_parent = get(h_line,'Parent');
isequal(h_line_parent,gca)
set(gca,'Color',[0,0,0])
set(h_line,'Color',[1 1 1],'MarkerSize',10);
set(gca,'XGrid','on','GridLineStyle','-.','XColor',[0.75 0.75 0])
set(gca,'YGrid','on','GridLineStyle','-.','YColor',[0 0.75 0.75])
set(gcf,'Color',[0 0 1])
观察指令窗及图形窗中的结果。
3、对象属性的缺省设置和查询
键入以下程序:
t=(0:pi/50:2*pi)';
k=0.4:0.1:1;Y=cos(t)*k;
line(t,Y,'Color',[1 0 0],'LineStyle','-.')
clf reset
set(gca,'ColorOrder',[0 0 0;0.7 0.7 0.7],'LineStyle','-|:')
line(t,Y)
clf reset
set(gcf,'DefaultAxesLineStyleOrder','-|:');
set(gcf,'DefaultAxesColorOrder',[1 0 0;0 0 1]);
line(t,Y)
观察指令窗及图形窗中的结果。
4、界面菜单、快捷菜单、现场菜单的制作:figure、set、uimenu的使用
(1)在command窗口键入以下指令:
>>h_fig=figure
观察图形窗中的结果。
(2)在command窗口键入以下指令:
Set(h_fig,'menubar','none')
观察图形窗中的结果。
(3)在command窗口键入以下指令:
Set(gcf,'menubar','figure')
观察图形窗中的结果。
(4)自制用户菜单
采用uimenu建立菜单项,语法如下:
h_menu=uimenu(Hx_parent,’PropertyName’,PropertyValue ,…);
Hx_parent为父辈对象的句柄,PropertyName为属性,PropertyValue属性值。 最重要的属性为Label和Callback,Label属性值是显示在菜单条上的文本字串,Callback是调用过程或函数执行有关功能。
键入以下程序:
figure
h_menu=uimenu(gcf,'label','&Color');
h_submenu1=uimenu(h_menu,'label','&Blue',...
'callback','set(gcf,''color'',''blue'')');
h_submenu2=uimenu(h_menu,'label','&Red',...
'callback','set(gcf,''color'',''red'')',...
'Accelerator','r');
观察指令窗及图形窗中的结果。还可将其中的句柄改变为别的图形对象的句柄,或将其中的一些属性的属性值修改后看其效果。
(5)现场菜单的制作
键入以下程序:
t=(-3*pi:pi/50:3*pi)+eps;
y=sin(t)./t;
hline=plot(t,y);
cm=uicontextmenu;
uimenu(cm,'label','Red','callback','set(hline,''color'',''r''),')
uimenu(cm,'label','Blue','callback','set(hline,''color'',''b''),')
uimenu(cm,'label','Green','callback','set(hline,''color'',''g''),')
set(hline,'uicontextmenu',cm)
观察指令窗及图形窗中的结果。还可将其中的句柄改变为别的图形对象的句柄,或将其中的一些属性的属性值修改后看其效果。
5、用户控件的制作:
按钮、复选框、单选框、文本编辑框、静态文本、滑标、框架等控件的制作。采用uicontrol函数实现,语法如下:
Hc_1=uicontrol(Hf_fig, ’PropertyName’,PropertyValue ,…)
Hf_fig是图形句柄,’PropertyName’,PropertyValue用来定义uicontrol的属性。一个重要的PropertyName是“style”,其常用属性值如下 按钮
键入以下程序:
clf reset
set(gcf,'menubar','none')
set(gcf,'unit','normalized','position',[0.2,0.2,0.64,0.32]);
set(gcf,'defaultuicontrolunits','normalized')
h_axes=axes('position',[0.05,0.2,0.6,0.6]);
t=0:pi/50:2*pi;y=sin(t);plot(t,y);
set(h_axes,'xlim',[0,2*pi]);
set(gcf,'defaultuicontrolhorizontal','left');
htitle=title('正弦曲线');
set(gcf,'defaultuicontrolfontsize',12);
uicontrol('style','frame',... 单选框 check text 复选框 静态文本edit 文本编辑框 slider 滑标 frame 框架
'position',[0.67,0.55,0.25,0.25]);
uicontrol('style','text',...
'string','正斜体图名:',...
'position',[0.68,0.77,0.18,0.1],...
'horizontal','left');
hr1=uicontrol(gcf,'style','radio',...
'string','正体','position',[0.7,0.69,0.15,0.08]);
set(hr1,'value',get(hr1,'Max'));
set(hr1,'callback',[...
'set(hr1,''value'',get(hr1,''Max'')),',...
'set(hr2,''value'',get(hr2,''Min'')),',...
'set(htitle,''fontangle'',''normal''),']);
hr2=uicontrol(gcf,'style','radio',...
'string','斜体','position',[0.7,0.58,0.15,0.08],...
'callback',[...
'set(hr1,''value'',get(hr1,''Min'')),',...
'set(hr2,''value'',get(hr2,''Max'')),',...
'set(htitle,''fontangle'',''italic''),']);
ht=uicontrol(gcf,'style','toggle',...
'string','Grid',...
'position',[0.67,0.40,0.15,0.12],...
'callback','grid');
观察指令窗及图形窗中的结果。
6、设计
(1)利用低层绘图指令绘制一条正弦曲线。要求采用实线、线色取[0.2 0.8 0.8]、线粗3磅;还要求写出所画正弦曲线所在轴的句柄。制作一现场菜单;包括三个子菜单line style(当用户选择该菜单项时,产生将线改为虚线的操作);line color(当用户选择该菜单项时,产生将线色改为紫色的操作);line width(当用户选择该菜单项时,产生将线粗细改为12磅的操作)。
(2)对于传递函数为G=1/(s2+2 s+1),制作一个能绘制该系统单位的阶跃响应。要求界面包括:供输入 值的"可编辑文本框";用来改变线色的"单功能按键";用来改变线的类型的"弹出框"。
三、实验要求
1、会获取和显示图形对象的句柄。
2、会设置菜单和子菜单。
3、会设置用户控件。
正在阅读:
《数学应用软件》试验(四)【句柄图形和图形用户界面制作】06-03
2021年教师政治素质自查自评报告文本08-16
济南恒大城首期二标段工程冬季施工方案02-27
公文写作习题及写练资料04-04
毕业设计需求分析04-23
重庆市开县南门镇花林等(2)个村土地整理项目 - 图文09-22
基层工作心得:乡镇纪委抓扶贫领域监督执纪工作要下好五种功夫11-19
(2017年)成外小升初素质测评(招生)真题精编(三)04-30
2008年南方罕见冰雪冰冻灾害06-27
小说中人物形象及其表现手法09-25
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 图形
- 句柄
- 用户界面
- 应用软件
- 试验
- 数学
- 制作
- 职务说明书修改版(财务部经理)
- 内部控制看皖江物流财务舞弊
- 学习扬善洲同志亊迹 展示共产党员风彩
- 三亚市天涯区七年级下学期语文期中考试试卷
- 上海市节能评审和节能评估文件编制费用支付标准【沪发改环资(2012)043号】
- 语文版 必修3学案 《黄州新建小竹楼记》
- 如何防止儿童玩具误吞 要定期检查孩子玩具
- 专用雨刷车型对照表(130112-1)
- 山东省生产经营单位安全生产主体责任规定(山东省人民政府令第260号)
- (北师大版)小学六年级上册看拼音写词语
- 《建筑施工扣件式钢管脚手架安全技术规范》JGJ130-2011
- 大工《机械制造装备设计》课程考试模拟试卷B答案
- 在“三严三实”专题党课上的讲话
- 国培优秀学员推荐材料
- 项目档案归档目录一览表(档案室用)
- 美术教育论文开题报告
- LED投光灯销售合同
- 医学检验个人实习心得
- 阜阳市第三中学新校区扩建工程施工组织设计(暗标)
- 广西安全文明施工费使用管理细则桂建质16号(新版)