MATLAB APP Designer 在回调函数中设置的组件工作或者显示状态,在实际回调函数运行中没有及时更新,如何解决。

1.问题表述

近日,我在做一些 MATLAB  app 时在某个回调函数中,需要完成一些耗时的读取文件任务,在读取文件的代码前面,我关闭了其他所有组件的工作状态(按钮变暗),在读取结束后又打开组件的工作状态。但是我发现在运行时,回调函数执行结束前是不会更新组件工作状态,直到回调结束时才会更新,但是此时更新已经没有必要,那这样的问题该如何解决呢?

2.问题解决

最简单的办法就是直接在更改组件工作状态属性的代码后加上:drawnow;目的是更新组件状态

还有一种办法是给回调函数中耗时的任务加上一个进度条:waitbar,也可以达到更新组件显示状态。

f = waitbar(x,msg) 创建一个非模态对话框,其中包含一个带有指定消息的等待条。等待条具有小数形式的长度 x

waitbar(x,f) 将等待条对话框 f 中的等待条长度更新到新位置 x。

具体 waitbar 使用方法,查看 mathworks 官方帮助文档:waibar 用法

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜菜的微光

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值