A custom modal dialog as an AppDesigner App
Version 1.0.0 (27,4 KB) von
RST
This is sample code for a custom, modal AppDesigner dialog. R2020b onwards
A sample custom modal dialog in AppDesigner.
The app is called from an ordinary function, much like uigetfile().
How it works:
1) The modal dialog app
- sets its main WindowStyle to 'modal'
- when a button is pressed
- calls its ValueChangedFcn to pass the dialog result to the caller
- closes the window
2) A .m-file function 'showModalDialog()'
- returns a variable 'result' with default value []
- has an inner function 'valueChanged' that sets 'result' per its one argument
- when running it
- creates the ModalDialogApp
- sets the app's ValueChangedFcn to 'valueChanged'
- uiwait()s on the dialog's mainFigure
Thus showModalDialog() is blocked until the dialog closes on a button press or window close. The dialog result, if any, is passed via a call to the inner function, thus minimising name pollution.
In this example the dialog result is a scalar double, but the result may be as complex as necessary.
In an app, showModalDialog() could become a private member function; this would, for example, let the app set the position of the dialog.
See MATLAB answer:
Zitieren als
RST (2024). A custom modal dialog as an AppDesigner App (https://www.mathworks.com/matlabcentral/fileexchange/165686-a-custom-modal-dialog-as-an-appdesigner-app), MATLAB Central File Exchange. Abgerufen.
Kompatibilität der MATLAB-Version
Erstellt mit
R2023a
Kompatibel mit R2020b und späteren Versionen
Plattform-Kompatibilität
Windows macOS LinuxTags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Live Editor erkunden
Erstellen Sie Skripte mit Code, Ausgabe und formatiertem Text in einem einzigen ausführbaren Dokument.
Version | Veröffentlicht | Versionshinweise | |
---|---|---|---|
1.0.0 |