双作用的指导改编下拉菜单回调

28日视图(30天)
克一个
克一个 在2023年6月13日12:05
编辑: 克一个 2023年6月14日发布活动
在我的代码中,我还有些GUIDE-style回调的下拉菜单如下(这只是示例代码):
%值改变功能:mydropdown_menu
函数mydropdown_menu_Callback(应用程序、事件)
%创建GUIDE-style回调参数——增加迁移工具
[hObject, ~,处理]= convertToGUIDECallbackArguments(应用程序、事件);
值=得到(hObject,“价值”);
如果值= = 7
warndlg (“警告”);
结束
guidata (hObject处理);
结束
问题是:当我选定值7,然后按计划displaed警告消息的,然而,当我做出下一个选择的任何其他值,再次显示的警告消息。我没有这样的问题在Appdesigner-style值改变了回调。我怎样才能解决这个问题?
3评论
克一个
克一个 2023年6月13日14:44
函数mydropdown_menu_Callback(应用程序、事件)
设置SelectedItem = app.mydropdown_menu.Value
结束
这段代码也会显示在Matlab命令窗口选择值的两倍。为了避免意外双击鼠标,我做了一个选择使用上下箭头和“输入”键。

登录置评。

接受的答案

克一个
克一个 2023年6月14日13:30
编辑:克一个 2023年6月14日在34
发现了我的问题的答案。
在指导创建并随后迁移到Appdesigner下拉菜单, ValueChangedFcn 回调反应值的变化以及点击(改变名字 mydropdown_menu_callback mydropdown_menuValueChanged 没有帮助)。下面的代码阻止调用两次我的回调:
%值改变功能:MatrixM_menu
函数mydropdown_menu_callback(应用程序、事件)
如果比较字符串(event.EventName“点击”)
返回
elseif比较字符串(event.EventName“ValueChanged”)
val = app.mydropdown_menu.Value;%的下拉显示这个词。
选择= app.mydropdown_menu.Items;%的所有可能的选择列表。
[~,selectedIndex] = ismember (val、选择);%选中的项的下标。
如果selectedIndex = = 7
uiwait (warndlg (“消息”));
结束
结束
结束
2的评论
克一个
克一个 2023年6月14日20分
编辑:克一个 2023年6月14日发布活动
当然,我将投票。你绝对值得:)我甚至接受最初ansver因为它是一些解决方案,然而,我想知道,为什么我有过如此行为的诗词。BDW,这与原在迁移之后—现在工作代码。还没有测试。

登录置评。

答案(1)

图像分析
图像分析 2023年6月13日13:01
如果你添加一个“价值改变回调”,点击下拉列表吗?然后有一个
函数mydropdown_menu_Callback(应用程序、事件)
displayedString = app.mydropdown_menu.Value
selectedIndex = app.mydropdown_menu.Item
如果selectedIndex = = 7
uiwait (warndlg (“警告”));
结束
结束
5个评论

登录置评。

类别

找到更多的在迁移向导的应用帮助中心文件交换

s manbetx 845


释放

R2023a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!