matlab wait程序,MATLAB gui wait的使用

进度条的调用格式为:h = waitbar(x, 'title', '后面可以加属性,和GUI一样');

X是分数到1的时候为百分之百,x = a/b;

使用get(h);,或者get(waitbar(x, 'title'));可以查看进度条的属性。

常用到的属性有’WindowStyle’默认为 normal,可以改成’modal’设置进度条已知在屏幕前面,小tips:如果程序在调试的时候,最好不要设置成modal因为这样程序出错不会跳转,无法继续调试(不过应该用不上吧,谁调试的时候不关waitbar么。循环很难调的)。

H =waitbar(0,'plot','windowstyle','modal');

t =0:0.01;

t =0:0.01:pi;%pi是π

fori = 1:10

plot(t,sin(2*pi*i*t));

waitbar(i/10,H,’done’);

pause(1);

end

以上程序动态第绘出频率1到10依次变化的正弦波曲线,进度条的改变需要改变前面说的x值,然后进度条会随着改变,一般用在循环中,或者自己知道时间而手动改变进度条。

在使用进度条还有一个特别重要的地方就是增加取消按钮,因为很多时候想要停止程序,但是叉掉进度条是停不了的,这样很浪费时间,所以最好设置一个取消按钮。

设置一个取消按钮,就相当于在gui上设计一个button然后执行回调函数。=

iscancel = false;

h =waitbar(0,'wait...','name','test','createcancelbtn','iscancel = true;');

for i = 1:10

waitbar(i/10,h,'done');

pause(1);

if iscancel

delete(h);

break;

end

end

上面的程序增加了一个createcancelbtn是一个默认的取消按钮,后面是他的call back 函数,在执行的时候,点击取消,会执行call back 函数,使得if成立。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`wait` 在 MATLAB 通常与 GUI 编程相关。在 GUI ,当用户执行某个操作时,程序需要等待用户完成操作并返回结果,然后才能继续执行后续的操作。这时就需要使用 `wait` 函数来实现等待功能。 `wait` 函数通常用于等待某个用户界面控件(如按钮、列表框、滑动条等)的回调函数执行完毕,或等待某个事件的发生(如窗口的关闭、鼠标的点击等)。在等待过程MATLAB 会一直等待,直到回调函数执行完毕或事件发生为止,然后才会继续执行后续的操作。 下面是一个示例代码,演示如何使用 `wait` 函数: ```matlab % 创建一个简单的 GUI 窗口 fig = figure; btn = uicontrol('Style','pushbutton','String','Click me',... 'Position',[20 20 50 20]); % 定义按钮的回调函数 set(btn,'Callback',@my_callback); % 等待按钮被点击 waitfor(btn); % 按钮被点击后执行的回调函数 function my_callback(hObject,eventdata) % 显示一个消息框 msgbox('Hello World!'); end ``` 在这个示例代码,我们首先创建了一个简单的 GUI 窗口,并在窗口添加了一个按钮。然后,我们定义了按钮的回调函数 `my_callback`,当用户点击按钮时,该函数将会被调用。接着,我们使用 `waitfor` 函数等待按钮被点击,当按钮被点击后,就会执行 `my_callback` 函数的代码,显示一个消息框。 需要注意的是,在使用 `wait` 或 `waitfor` 函数时,一定要保证回调函数或事件处理函数的执行时间不会过长,否则可能会导致程序无响应或崩溃。因此,一般建议将耗时的操作放在单独的线程运行,以避免阻塞主线程的执行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值