如何在当前GUI窗口MATLAB中添加waitbar?

时间:2017-07-06 18:03:46

标签: matlab

我有一个GUI图,其中包含一些按钮,我想在放置按钮的同一GUI窗口上显示waitbar,我尝试了不同的解决方案但是徒劳无功。例如,当用户点击按钮时,它会在图的左下方开始显示等待栏。

1 个答案:

答案 0 :(得分:1)

您可以尝试在图中添加一个java等待栏。

将它放在OpeningFcn

PB=javaObjectEDT(javax.swing.JProgressBar);
javacomponent(PB,[10,10,200,20],gcf); %put at bottom part of the current figure
set(handles.output.Children(1),'Tag','first_bar'); %make sure you can find it back

在任何函数的回调中,您可以使用以下代码将条形设置为0到100之间的值:

h=findobj(handles.output.Children,'Tag','first_bar');
set(h.JavaPeer,'Value',rand(1)*100)

您可以像使用

中的任何GUI对象一样使其可见或不可见
h=findobj(handles.output.Children,'Tag','first_bar');
set(h,'visible','off');

您可以在此处找到有关JProgressBar的详细信息。例如,使用它可以得到一个包含条形内部进度的字符串。

h=findobj(handles.output.Children,'Tag','first_bar');
set(h.JavaPeer,'StringPainted',1)