matlab gui设计 一个按钮两个功能(开始和暂停)

  • Post author:
  • Post category:其他


matlab 设计Gui界面,想通过一个按钮实现两个通功能,点一下是开始,再点击一下是暂停,再再点击又是开始


要求:

开始按钮,点击之后,程序开始运行,此时按钮变为暂停按钮

再次点击,程序暂停,按钮变为开始按钮


点击

点击

程序:以一个循环加1的程序为例:

function ButtonPushed(app, event)

            st =  app.Button.Text;%判断控件的String 是否为 开始
            if strcmp(st, '开始')
                app.Button.Text = '暂停';
                uiresume;%回复暂停,开始程序
                close(gcf);
                for i = 1:100
                    app.i = app.i + 1;
                    pause(1);
                    app.xianshi.Value = app.i;
                
                    if strcmp(st,'暂停')
                        break;
                    end 
                
                end
                
               elseif strcmp(st,'暂停') 
                 app.Button.Text = '开始';
                 uiwait;%用于暂停程序
            end
            
            
            
        end


结果:




总结:

app.Button.Text = ‘暂停’; 直接是将app中的button按钮的Text赋予暂停字符,当时为了赋予字符百度了好久,不知道这个是不是跟版本有关

uiwait 和 uiresume 是暂停和开始程序的,配套使用,uiresume是对uiwait的回应,uiwait暂停程序之后,程序遇到uiresume就会重新启动,大家有兴趣可以仔细深入一下。


问题:

uiwait和 uiresume之后会出现图形框,因此在uiresume下面加了close(gcf),但是在uiwait下面加却没有作用,有同学知道怎么解决可以指导一下,谢谢。


参考:


MATLAB GUI界面实现以一个按钮控制播放和暂停视频功能_琪殿的博客-CSDN博客_matlab 视频暂停



版权声明:本文为weixin_47517664原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。