How to indicate that GUI is busy running?
120 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Kyle
il 12 Lug 2011
Modificato: Walter Roberson
il 31 Ago 2020
I would like to know how to indicate in my GUI that MATLAB is currently busy running some piece of code (e.g. a long computation). Currently, there is no indication in the GUI that the code is running, causing the user to wonder whether it is working or just not responsive.
0 Commenti
Risposta accettata
Titus Edelhofer
il 12 Lug 2011
Hi Kyle,
two typical main ways to do this: in your callback do
set(handles.figure1, 'pointer', 'watch')
drawnow;
% your computation
set(handles.figure1, 'pointer', 'arrow')
This shows the hour glass during the callback. If the callback indeed takes longer, use function "waitbar" to indicate progress ...
Titus
4 Commenti
Aash
il 4 Mag 2018
I tried doing this and it is giving this error Error using matlab.ui.control.UIControl/set There is no pointer property on the UIControl class.
Error in Control>error_Callback (line 435) set(handles.error, 'pointer', 'watch')
What does it mean?
Walter Roberson
il 8 Lug 2020
You can only set the Pointer for a figure, not for a uicontrol.
fig = ancestor(handles.error, 'figure');
oldpointer = get(fig, 'pointer');
set(fig, 'pointer', 'watch');
drawnow;
% your computation goes here
set(fig, 'pointer', oldpointer)
Più risposte (3)
Kyle
il 12 Lug 2011
1 Commento
Sean de Wolski
il 12 Lug 2011
You have to manually update waitbar - look at the example in
doc waitbar
Aash
il 9 Mag 2018
My pointer is changing to the loading while computation but it isnt coming back to the orignal arrow after the code stops executing. Here is my code
oldpointer = get(handles.figure1, 'pointer');
set(handles.figure1, 'pointer', 'watch')
drawnow;
%code that runs
set(handles.figure1, 'pointer', oldpointer)
2 Commenti
Ahmer Shahid
il 13 Gen 2019
How can I use this in app designer?
it's giving me error.
Error using matlab.ui.Figure/set
Functionality not supported with figures created with the uifigure function. For more information, see Graphics Support in App Designer.
syed Rahim
il 12 Giu 2020
isn't handles a GUIDE only graphics structure. For APP designer it should be App.Figure1.
Jan Siegmund
il 8 Lug 2020
Modificato: Jan Siegmund
il 31 Ago 2020
Users that looked for a waitbar style solution should have a look at https://de.mathworks.com/help/matlab/ref/uiprogressdlg.html which is basically waitbar but with an up to date look.
0 Commenti
Vedere anche
Categorie
Scopri di più su Migrate GUIDE Apps in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!