Why is uiconfirm freezing my application?
2 次查看(过去 30 天)
显示 更早的评论
Regardless of which button the user clicks, MATLAB shows as 'busy' once the confirmation is complete. The same happens with uialert. What am I doing wrong?
fh = uifigure();
q = uiconfirm( fh, 'Click anything to close this:', 'Example', 'Options', { 'Yes', 'No' }, 'CloseFcn', @( o, e ) handleDialog( o, e ) );
% q = uiconfirm( fh, 'Click anything to close this:', 'Example', 'Options', { 'Yes', 'No' } ); % same thing happens without the close function.
Hitting ctrl-c returns this error, repeated several times:
Operation terminated by user during message.internal.MessageService/doUnsubscribe
In message.internal.MessageService.unsubscribe
In message/unsubscribe
In matlab.ui.internal.dialog.DialogController/destroyListeners (line 70)
message.unsubscribe(this.ReloadSubscription);
In matlab.ui.internal.dialog.ConfirmDialogController/destroyListeners (line 65)
destroyListeners@matlab.ui.internal.dialog.DialogController(this);
In matlab.ui.internal.dialog.DialogController/closeCallback (line 45)
this.destroyListeners();
In matlab.ui.internal.dialog.ConfirmDialogController>@(evd)this.closeCallback(evd) (line 56)
this.CallbackSubscription = message.subscribe(this.CallbackChannelID, @(evd) this.closeCallback(evd));
In message.internal.MessageService/doExecuteCallback
In message.internal.MessageService.executeCallback
In message.internal.executeCallback
In uiconfirm (line 96)
waitfor(dc,'SelectedOption');
2 个评论
Walter Roberson
2020-10-22
编辑:Walter Roberson
2020-10-22
Your handleDialog is preventing the CloseFcn from returning, I suspect.
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dialog Boxes 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!