Callback in push button doesn't work

Hey I have a simple if function that I want to start with a GUI pushbutton. It only works when I put uiwait before the if (local function) and the uiresume in in the callback function. In debug mode it works without it. How can I preclude using uiwait?
Matlab function
run GUI.m
global start
while true
uiwait;
if start
...
end
end
My GUI pushbutton callback function:
% --- Executes on button press in pushbuttonstart.
function pushbuttonstart_Callback(hObject, eventdata, handles)
% hObject handle to pushbuttonstart (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global start
start=true;
uiresume;

2 commentaires

Ingrid
Ingrid le 4 Fév 2016
your question is not really clear as the code you past is not a function. Could you give a bit more information and code i.e. the actual pushbutton callback and explain what you are trying to achieve
mat
mat le 4 Fév 2016
I updated the code

Connectez-vous pour commenter.

 Réponse acceptée

mat
mat le 9 Fév 2016

0 votes

Seems like drawnow did the trick.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 4 Fév 2016

0 votes

If you have code that needs to delay until a button is pushed, then you should put the code itself (or a call to it) into the callback of the pushbutton.

1 commentaire

mat
mat le 4 Fév 2016
Modifié(e) : mat le 4 Fév 2016
code should still be running in a while loop, I don't want to have delay. But atm the if function only works when using uiwait.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Update figure-Based Apps dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by