Callback in push button doesn't work

4 views (last 30 days)
mat
mat on 4 Feb 2016
Answered: mat on 9 Feb 2016
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 Comments
Ingrid
Ingrid on 4 Feb 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

Sign in to comment.

Accepted Answer

mat
mat on 9 Feb 2016
Seems like drawnow did the trick.

More Answers (1)

Walter Roberson
Walter Roberson on 4 Feb 2016
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 Comment
mat
mat on 4 Feb 2016
Edited: mat on 4 Feb 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.

Sign in to comment.

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!