matlab GUI 中popupmenu控件的问题

通过“确定”按钮可以选择网络层数,例如我选择3层,那么下面的popupmenu控件的下拉框就有1、2、3。如果我选择6层,选择确定按钮后,popupmenu控件的下拉框就... 通过“确定”按钮可以选择网络层数,例如我选择3层,那么下面的popupmenu控件的下拉框就有1、2、3。如果我选择6层,选择确定按钮后,popupmenu控件的下拉框就有1、2、3、4、5、6。所以给popupmenu控件的String属性添加数据是没有问题。现在的问题是如果此时我在popupmenu控件下拉框中选择了6,我再修改选择层数,例如选择4层,则popupmenu控件无法显示;如果此时我再选择了8层,那么又能正常给popupmenu控件的String属性添加数据了。 展开
 我来答
lovec_ever
2012-01-05 · TA获得超过616个赞
知道答主
回答量:63
采纳率:0%
帮助的人:75.4万
展开全部
控件当然无法正常显示了,当你将层数变小时popupmenu原来的Value值超出了你新给定的Value值范围,所以出错。
你可以添加一句话(pushbutton回调函数中)
set(handles.popupmenu1,'value',1); %假设popupmenu的Tag为popupmenu1

这样就没问题了
匿名用户
2019-08-23
展开全部
因为你的网络层数是动态变化的,这样导致matlab的popupmenu的value值变化后,会固定,固定后,你之后输入的参数数目少于value值,就会无法正常显示,建议在赋给下拉框string的同时,赋予value值。如
set(handles.popupmenu_ip,'value', length(ips), 'string', ips);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式