收藏 分享(赏)

Matlab GUI的菜单和工具栏常用操作.doc

上传人:fmgc7290 文档编号:6794860 上传时间:2019-04-22 格式:DOC 页数:5 大小:84KB
下载 相关 举报
Matlab GUI的菜单和工具栏常用操作.doc_第1页
第1页 / 共5页
Matlab GUI的菜单和工具栏常用操作.doc_第2页
第2页 / 共5页
Matlab GUI的菜单和工具栏常用操作.doc_第3页
第3页 / 共5页
Matlab GUI的菜单和工具栏常用操作.doc_第4页
第4页 / 共5页
Matlab GUI的菜单和工具栏常用操作.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、1Matlab GUI 常用操作菜单1. 编辑菜单打开 GUIDE,选择工具栏上面的菜单编辑按钮2. 添加菜单回调函数(callback)菜单编辑完成保存后,在 fig 对应的 m 文件中会自动生成菜单的回调函数声明例如菜单 tag 名为 menuFilePrint,则对应的 callback 函数为:function menuFilePrint_Callback(hObject, eventdata, handles)可以在该函数内添加代码实现功能。3. 菜单项访问 获取菜单句柄在 matlab 的函数中要对某个菜单进行访问,必须获得该菜单的句柄。如果是在菜单的回调函数里面,hObject

2、就是该菜单的句柄;2如果是在其他的函数里面要获得某一菜单的句柄,比如选中工具栏上的 ZoomIn 按钮,按钮处于被按下状态,同时要设置对应菜单项 view-Zoom-Zoom In 为选中状态,如下图:这里要在按钮“ZoomIn”的 callback 函数里面实现对菜单 menuViewZoomIn 的状态设置。首先得获得菜单的句柄:% first we must get the handle of menuZoomInhFigChildren = allchild(gcf);% menuView handlehMenuView = findobj(hFigChildren,Tag,menuV

3、iew);hvc = allchild(hMenuView);% menuViewZoomhViewZoom = findobj(hvc,Tag,menuViewZoom);hvzc = allchild(hViewZoom);%menuZoomIn handlehZoomIn = findobj(hvzc,Tag, menuZoomIn); 获取设置菜单状态得到菜单的句柄后就可以得到菜单当前的状态了:if strcmp(get(hZoomIn, Checked),on)set(hZoomIn, Checked, off);elseset(hZoomIn, Checked, on);end3工

4、具栏1. 不显示工具栏1) GUIDE 开发界面在对应的 m 文件中找到function Main_OpeningFcn(hObject, eventdata, handles, varargin)在该函数里面添加:set(hObject,Toolbar,none);2) M 文件开发hMainFigure = figure(. % The main GUI figureMenuBar,none, .Toolbar,none, .HandleVisibility,callback, .Color, get(0,.defaultuicontrolbackgroundcolor);2. 显示“Fi

5、gure”工具栏set(hObject,Toolbar,figure);3. 添加自定义工具栏set(hObject,Toolbar,none);hToolbar = uitoolbar(hObject);hNewPushtool = uipushtool(. % Open toolbar buttonParent,hToolbar,.TooltipString,New File,.CData,imread(New.bmp);HandleVisibility,callback, .ClickedCallback, hOpenMenuitemCallback);4. 获取工具栏句柄% get t

6、oolbar handlehToolbar = findall(gcf,Type,uitoolbar);if isempty(hToolbar), return, end5. 获取 figure 工具栏按钮的 tag 值% get toolbar handlehToolbar = findall(gcf,Type,uitoolbar);if isempty(hToolbar), return, end4% get all childrenhChildren = allchild(hToolbar);if isempty(hChildren), return,endhTags = get(hCh

7、ildren, Tag);hTags 保存了工具栏所有按钮的 tag 值:6. 获取设置 figure 工具栏按钮的 callback 函数%reset callback function for “Zoom in“hZoomIn = findobj(hChildren,Tag,Exploration.ZoomIn);set(hZoomIn,ClickedCallback,tbZoomIn_Callback);function tbZoomIn_Callback(hObject, eventdata)% hObject handle to tbZoomIn (see GCBO)% eventd

8、ata reserved - to be defined in a future version of MATLAB7. 删除 figure 工具栏按钮% set figure toolbar firstset(hObject,Toolbar,figure);% get toolbar handletbh = findall(hObject,Type,uitoolbar);if isempty(tbh), return, end% toolbar buttons collectionhChildren = allchild(tbh);if isempty(hChildren), return,

9、 end% delete data cursor buttonhDeleted = findobj(hChildren,Tag,Exploration.DataCursor);delete(hDeleted);58. 设置 figure 工具栏按钮的状态% get toolbar handlehToolbar = findall(gcf,Type,uitoolbar);if isempty(hToolbar), return, end% get all childrenhChildren = allchild(hToolbar);if isempty(hChildren), return,endhTags = get(hChildren, Tag);% find “Zoom In“ buttonhb = findobj(hChildren,Tag,Exploration.ZoomIn);if isempty(hb),return, end% set stateif strcmp(get(hObject, Checked),on)set(hObject, Checked, off);set(hb,State, off);elseset(hObject, Checked, on);set(hb,State, on);end

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报