前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在matlab中实现可编辑下拉菜单?

如何在matlab中实现可编辑下拉菜单?

作者头像
巴山学长
发布2020-06-03 15:54:55
2.1K0
发布2020-06-03 15:54:55
举报
文章被收录于专栏:巴山学长巴山学长
头些天做GUI开发的时候使用到了matlab下拉菜单popupmenu组件,但是这个组件有个问题,只能事先预设好里面的可选择内容,一旦内容确定后,编译后就不能自定义修改了,除非重新编译程序。为了解决该问题,小编在网上开始了一顿搜索。大概归纳了一下可以采用三种方式来实现在matlab中的可编辑下拉菜单:

一、通过在matlab中加载第三方的可编辑下拉菜单组件

二、在matlab中使用java组件

三、通过编辑框edit组件与列表框listbox组件组合来实现

小编经过权衡后,选择了第三种方式来实现,并相关操作集成到一个名为popUpMenu的函数当中,如果需要使用直接调用即可,下面就一起来看看这个函数吧。

调用格式:cont = popUpMenu(handle,pos,ftN,ftZ,ftB,ftA)

参数说明:

cont:用于获取可编辑下拉菜单当前所选择的内容

handle: 父界面对应的图像句柄

pos:可编辑下拉菜单位置,形式为[x y weight height];

ftN:字体,默认为:Times New Roman

ftZ:字体大小,默认为:8

ftB:字体粗细,默认为 'Bold',可用选项为:'normal' 或 'Bold'

ftA:字体倾斜,默认为 'italic',可用选项为:'normal' 或 'italic'

以下为popUpMenu的演示程序:

代码语言:javascript
复制

% 程序作者:bashan
% 公众号名称:matlab爱好者
% 公众号ID:matlabaihaozhe

clc;clear;close all;
% 定义figure名称
appname = strcat('可编辑下拉菜单',32,169,'matlab爱好者');
% 获取figure句柄
mainH = figure('Position',[395 168 700 320],'Name',appname,...
    'NumberTitle','off',...
    'Resize','off',...
    'Units','normalized',...
    'Color','w','Menubar','none');
str = {'100','200','300','400'};
pos = [0.38 0.55 0.25 0.12];
ftN = 'Times New Roman';   % 字体名称
ftZ = 8;        % 字体大小
ftB = 'Bold';   % 字体粗细
ftA = 'italic'; % 字体倾斜
% 核心程序
cont = popUpMenu(mainH,str,pos,ftN,ftZ,ftB,ftA);
get(cont,'string')

uicontrol(mainH,'Style','text',...
    'Units','normalized',...
    'String','可编辑下拉菜单演示程序',...
    'FontName','楷体',...
    'FontSize',9,...
    'FontUnits','normalized',...
    'HorizontalAlignment','center',...
    'ForegroundColor',[0.6395 0.0791 0.1804],...
    'BackgroundColor',[1 1 1],...
    'Position',[.18 .72 .65 .20]);

演示效果图

小伙伴可以自行使用上面归纳的方法来实现可编辑下拉菜单功能,隐藏部分的内容为小编自己编写的matlab可编辑下拉菜单源程序,近百行代码,欢迎有需要的小伙伴使用!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 巴山学长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档