MATLAB: Figure does not appear until script finishes

figurewhile loop

This code is supposed to run an infinite loop unit a key is pressed. The figure does not appear until after the script stops. If I step through the code the figure appears when it should but running the code the figure will not appear or sometimes it will and sometimes it won't. Mostly won't.
%Create figure object
myFig = figure('Name','MyFifgure',"Visible","on")
%Set CurrentCharacter
input = 'x'
set(myFig,'CurrentCharacter',input)
%Loop until key pressed, figure must have focus
while get(myFig,'CurrentCharacter') == 'x'
disp(get(myFig,'CurrentCharacter'))
end
disp(get(myFig,'CurrentCharacter'))
close('all')
Thanks for any help

Best Answer

Use drawnow() to force the figure to update when needed.