Why does uiwait not work during startupFcn?
9 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
James Moore
el 12 de Jun. de 2023
Editada: Cris LaPierre
el 13 de Jun. de 2023
I have a function in my app that I use to pause the program and show an alert. Most of the time it works without issue.
function PauseAlert(app, msg, title, icon)
if nargin < 4
icon = 'error';
end
beep;
uialert(app.UIFigure, msg, title,'CloseFcn','uiresume(gcbf)','Icon',icon);
drawnow;
figure(app.UIFigure);
uiwait(gcbf);
end
However, if it try to use it from within the startupFcn, the program halts on the last line with the following error message:
Error using uiwait (line 48)
Input argument must be of type figure
And it gives another error when I close the uialert message:
Warning: Error while evaluating 'CloseFcn' for dialog.
Error using uiresume (line 26)
Argument must be a Figure object.
I could probably do something like the following:
if ishghandle(h)
uiwait(gcbf)
end
but then the program wouldn't pause like I want it to.
0 comentarios
Respuesta aceptada
Cris LaPierre
el 12 de Jun. de 2023
It sounds like the figure gcbf does not yet exist when you try to call uiwait.
7 comentarios
Cris LaPierre
el 13 de Jun. de 2023
Just a note that this code also works in R2023a as well. For whatever reason, when I was testing it yesterday, it did not.
Más respuestas (0)
Ver también
Categorías
Más información sobre Environment and Settings en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!