uiconfirm
Create confirmation dialog box
Description
uiconfirm(
displays a modal in-app confirmation dialog box in the specified target figure. This
syntax displays two options for the user to select, OK and
Cancel. You cannot access the figure behind the dialog
box while the dialog box is open, but you can access the MATLAB® command prompt.fig,message,title)
uiconfirm(
displays the confirmation dialog box with one or more fig,message,title,Name,Value)Name,Value
arguments that customize the appearance and behavior of the dialog box. For example,
you can specify a custom set of options in the dialog box instead of the default,
OK and Cancel.
returns the user selection as a character vector. Specify the
selection = uiconfirm(___)selection output argument with any of the previous
syntaxes. When you use this syntax, you cannot access the MATLAB command prompt while the dialog box is open.
Examples
Create a dialog box that displays the warning icon instead of the default question icon.
fig = uifigure; selection = uiconfirm(fig, ... "Close document?","Confirm Close", ... "Icon","warning");
![]()
When the user selects an option, uiconfirm returns
that choice as a character vector.
Create a confirmation dialog containing three options: Overwrite, Save as new, and Cancel. Specify Save as new as the default option, and specify Cancel as the option that maps to the cancel behavior.
fig = uifigure; msg = "Saving these changes will overwrite previous changes."; title = "Confirm Save"; selection = uiconfirm(fig,msg,title, ... "Options",["Overwrite","Save as new","Cancel"], ... "DefaultOption",2,"CancelOption",3);
![]()
When the user selects an option, uiconfirm returns
their selection as a character vector.
Create a figure with a PolarAxes object and a
confirmation dialog box that displays an equation formatted using LaTeX.
Include code to process the dialog box selection and plot the equation if
the user clicks OK.
fig = uifigure; ax = polaraxes(fig); msg = "Do you want to plot $$r = \exp \left(\frac{\theta}{10}\right)?$$"; selection = uiconfirm(fig,msg,"Plot equation","Interpreter","latex"); switch selection case 'OK' theta = -100:0.1:0; r = exp(theta/10); polarplot(ax,theta,r); case 'Cancel' return end
![]()
Click OK to plot the equation.
![]()
The CloseFcn name-value argument is
useful for executing specific tasks when the dialog box closes.
In the MATLAB Editor, create a script that contains the following code. The
code creates a figure and defines two callback functions named
figcallback and dlgcallback.
The
figcallbackfunction executes when a user attempts to close the figure window. The function creates a confirmation dialog box in the figure window and specifies thedlgcallbackfunction as the dialog boxCloseFcncallback.The
dlgcallbackfunction executes when the dialog box closes. The function accesses theSelectedOptionfield in astructcalledevent, which MATLAB passes as the second argument to the callback function. If the user selects OK, the function closes the figure window.
fig = uifigure("CloseRequestFcn",@figcallback); function figcallback(src,event) uiconfirm(src,"Close app?","Confirm Close", ... "CloseFcn",@dlgcallback); end function dlgcallback(src,event) if event.SelectedOption == "OK" delete(event.Source) end end
Run the script, and then attempt to close the figure window. This creates the confirmation dialog box.
![]()
For more information about specifying callback functions, see Create Callbacks for Apps Created Programmatically.
Create a confirmation dialog box in App Designer that asks a user to confirm the decision to close the app.
Write a CloseFcn callback for the confirmation dialog
box that closes the app figure window if the user selects
OK. First, in App Designer Code
View, create a private function by selecting Function > Private Function. Then, write the private function so that it matches this
code:
function mycallback(app,src,event) if event.SelectedOption == "OK" delete(app.UIFigure); end end
Finally, to display the dialog box when a user tries to close the app,
create a CloseRequestFcn callback for the figure
window. Click Callback and select
app.UIFigure as the component and
CloseRequestFcn as the callback, and then
click Add Callback. Replace the body of the callback
function that App Designer creates with this code:
uiconfirm(app.UIFigure,'Close document?','Confirm Close', ... 'CloseFcn',@app.mycallback);
Save and run your app, and then attempt to close the app window to create the confirmation dialog box.
![]()
For more information about programmatically creating components and specifying callback functions, see Add UI Components to App Designer Programmatically.
Input Arguments
Target figure, specified as a Figure object.
Message to display, specified as a character vector, cell array of character vectors, or string array. Specify a cell array or string array when your message has multiple lines of text. Each element in the array corresponds to a different line of text.
Dialog box title, specified as a character vector or string scalar.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN, where Name is
the argument name and Value is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose
Name in quotes.
Example: selection =
uiconfirm(fig,message,title,'Options',{'Save','Delete','Quit'})
specifies three custom options for the dialog box.
Custom options, specified as a cell array of character vectors or a string array.
Icon, specified as a predefined icon or a custom icon.
Predefined Icon
This table lists the values for the predefined icons. For example,
to show the check mark icon, specify the name-value pair
'Icon','success'.
| Value | Icon |
|---|---|
'question'
(default) |
|
'info' |
|
'success' |
|
'warning' |
|
'error' |
|
'' | No icon displays. |
Custom Icon
Specify a custom icon as one of these values:
A character vector that specifies the file name of an SVG, JPEG, GIF, or PNG image that is on the MATLAB path. Alternatively, you can specify a full path to the image file.
A truecolor image array. See Working with Image Types in MATLAB for more information.
Default option, specified as a character vector, string scalar, or a whole number. The default option corresponds to the button in the dialog box that has focus by default.
When you specify a character vector or string scalar, it must match an
element in the Options array. However, if you are
calling uiconfirm without the
Options argument, then
DefaultOption must be 'OK'
or 'Cancel'.
When you specify a whole number, it must be in the range [1, n], where
n is the length of the Options array. If you are
calling uiconfirm without the
Options argument, then
DefaultOption must be 1 or
2.
Cancel option, specified as a character vector, string scalar, or a whole number. The cancel option specifies which option maps to cancel actions in the dialog box.
When you specify a character vector or string scalar, it must match an
element in the Options array. However, if you are
calling uiconfirm without the
Options argument, then
CancelOption must be 'OK' or
'Cancel'.
When you specify a whole number, it must be in the range [1, n], where
n is the length of the Options array. If you are
calling uiconfirm without the
Options argument, then
CancelOption must be 1 or
2.
Close callback function, specified as one of these values:
A function handle.
A cell array in which the first element is a function handle. Subsequent elements in the cell array are the arguments to pass to the callback function.
A character vector containing a valid MATLAB expression (not recommended). MATLAB evaluates this expression in the base workspace.
This callback is useful for executing specific tasks when the dialog box closes.
When you specify CloseFcn as a function handle
(or cell array containing a function handle), MATLAB passes a struct containing event data
as an input argument to the callback function. This
struct contains the fields described in the
following table.
| Structure Field | Value |
|---|---|
Source | Figure object associated with
the dialog box. |
EventName | 'ConfirmDialogClosed' |
DialogTitle | Title of the dialog box. |
SelectedOptionIndex | Index of the selected option. For
n options, the index can be any
whole number from 1 to
n. |
SelectedOption | Button label for the selected option, returned as a character vector. |
For more information about specifying callback functions, see Create Callbacks for Apps Created Programmatically.
Dialog text interpreter, specified as:
'none'— Display literal characters.'tex'— Interpret text using a subset of TeX markup.'latex'— Interpret text using a subset of LaTeX markup.'html'— Interpret text using a subset of HTML markup.
TeX Markup
Use TeX markup to add superscripts and subscripts and to include special characters in the text.
Modifiers remain in effect until the end of the text.
Superscripts and subscripts are an exception because they modify only the next character or the
characters within the curly braces. When you set the interpreter to "tex",
the supported modifiers are as follows.
| Modifier | Description | Example |
|---|---|---|
^{ } | Superscript | "text^{superscript}" |
_{ } | Subscript | "text_{subscript}" |
\bf | Bold font | "\bf text" |
\it | Italic font | "\it text" |
\sl | Oblique font (usually the same as italic font) | "\sl text" |
\rm | Normal font | "\rm text" |
\fontname{ | Font name — Replace
with the name of
a font family. You can use this in combination with other modifiers. | "\fontname{Courier} text" |
\fontsize{ | Font size —Replace
with a numeric
scalar value in point units. | "\fontsize{15} text" |
\color{ | Font color — Replace
with one of
these colors: red, green,
yellow, magenta,
blue, black,
white, gray,
darkGreen, orange, or
lightBlue. | "\color{magenta} text" |
\color[rgb]{specifier} | Custom font color — Replace
with a
three-element RGB triplet. | "\color[rgb]{0,0.5,0.5} text" |
This table lists the supported special characters for the
"tex" interpreter.
| Character Sequence | Symbol | Character Sequence | Symbol | Character Sequence | Symbol |
|---|---|---|---|---|---|
| α |
| υ |
| ~ |
| ∠ |
| ϕ |
| ≤ |
|
|
| χ |
| ∞ |
| β |
| ψ |
| ♣ |
| γ |
| ω |
| ♦ |
| δ |
| Γ |
| ♥ |
| ϵ |
| Δ |
| ♠ |
| ζ |
| Θ |
| ↔ |
| η |
| Λ |
| ← |
| θ |
| Ξ |
| ⇐ |
| ϑ |
| Π |
| ↑ |
| ι |
| Σ |
| → |
| κ |
| ϒ |
| ⇒ |
| λ |
| Φ |
| ↓ |
| µ |
| Ψ |
| º |
| ν |
| Ω |
| ± |
| ξ |
| ∀ |
| ≥ |
| π |
| ∃ |
| ∝ |
| ρ |
| ∍ |
| ∂ |
| σ |
| ≅ |
| • |
| ς |
| ≈ |
| ÷ |
| τ |
| ℜ |
| ≠ |
| ≡ |
| ⊕ |
| ℵ |
| ℑ |
| ∪ |
| ℘ |
| ⊗ |
| ⊆ |
| ∅ |
| ∩ |
| ∈ |
| ⊇ |
| ⊃ |
| ⌈ |
| ⊂ |
| ∫ |
| · |
| ο |
| ⌋ |
| ¬ |
| ∇ |
| ⌊ |
| x |
| ... |
| ⊥ |
| √ |
| ´ |
| ∧ |
| ϖ |
| ∅ |
| ⌉ |
| 〉 |
| | |
| ∨ |
| 〈 |
| © |
LaTeX Markup
Use LaTeX markup to format and display mathematical expressions,
equations, and special characters. Use dollar symbols around the
marked up text. For example, use '$\int_1^{20} x^2
dx$' for inline mode or '$$\int_1^{20} x^2
dx$$' for display mode.
The displayed text uses the default LaTeX font style. You can use LaTeX markup to change the font style.
MATLAB supports most standard LaTeX math mode commands. For more information, see Supported LaTeX Commands.
HTML Markup
Use HTML markup to display links and customize font styles.
The interpreter supports a subset of HTML markup. As a general guideline, the interpreter supports text-related tags and styles. Unsupported tags and styles are ignored.
This table lists the supported elements and element attributes.
| HTML Element | Attributes | Description |
|---|---|---|
a | style, target, href, title | Hyperlink |
abbr | style, title | Abbreviation or acronym |
address | style | Contact information |
article | style | Self-contained, independent content |
aside | style | Content indirectly related to the main content |
b | style | Bold text |
bdi | style, dir | Content formatted in a different direction from surrounding text |
bdo | style, dir | Content formatted in a different direction from surrounding text |
big | style | Text one font size level larger than surrounding text (obsolete in HTML5) |
blockquote | style, cite | Extended quotation |
br | n/a | Line break |
caption | style | Caption or title of a table |
center | style | Content centered horizontally |
cite | style | Title of a creative work |
code | style | Fragment of code |
col | style, align, valign, span, width | Column within a table |
colgroup | style, align, valign, span, width | Group of columns within a table |
dd | style | Term or value in a description list |
del | style, datetime | Text that was deleted from a document |
details | style, open | Interactive widget with text visible only when toggled to 'open' state |
dl | style | Description list |
dt | style | Term or value in a description list |
em | style | Emphasized text (typically displayed in italic) |
font | style, color, size, face | Text with specified font properties (obsolete in HTML5) |
footer | style | Footer |
h1. h2, h3, h4, h5, h6 | style | Section heading — <h1> is the highest level of heading and <h6> is the lowest |
header | style | Introductory content |
hr | style | Thematic break |
i | style | Text offset from the surrounding content — by default rendered as italic |
ins | style, datetime | Text inserted into a document |
li | style | Item in a list |
mark | style | Marked or highlighted text |
ol | style | Ordered list |
p | style | Paragraph |
pre | style | Preformatted text |
s | style | Text with a strikethrough |
strike | style | Text with a strikethrough (obsolete in HTML5) |
section | style | Standalone section |
small | style | Text one font size level smaller than surrounding text (obsolete in HTML5) |
sub | style | Subscript |
sup | style | Superscript |
strong | style | Text with strong importance |
table | style, width, border, align, valign | Table |
tbody | style, align, valign | Table body |
td | style, width, rowspan, colspan, align, valign | Table data cell |
tfoot | style, align, valign | Set of table rows that summarize the table columns |
th | style, width, rowspan, colspan, align, valign | Table data cell specified as a header of a group of cells |
thead | style, align, valign | Set of table rows that specify the column heads |
tr | style, rowspan, align, valign | Row of table cells |
tt | style | Monospace text (obsolete in HTML5) |
u | style | Text with an unarticulated annotation — by default rendered as an underline |
ul | style | Unordered list |
For more information about these elements, see https://developer.mozilla.org/en-US/docs/Web/HTML/Element.
To use HTML markup to create a hyperlink that runs MATLAB code, see Create Hyperlinks that Run Functions.
You can use HTML style attributes to format HTML content. A style attribute is a string of CSS attributes and their values.
These CSS attributes are supported:
background-colorborder-bottomborder-bottom-colorborder-bottom-left-radiusborder-bottom-right-radiusborder-bottom-styleborder-bottom-widthborder-leftborder-left-colorborder-left-styleborder-left-widthborder-radiusborder-rightborder-right-colorborder-right-styleborder-right-widthborder-spacingborder-styleborder-topborder-top-colorborder-top-left-radiusborder-top-right-radiusborder-top-styleborder-top-widthborder-widthcolordirectionfont-familyfont-sizefont-stylefont-weightheighthiddenline-heightmarginmargin-bottommargin-leftmargin-rightmargin-topmax-heightmax-widthmin-heightmin-widthoverflowoverflow-wrapoverflow-xoverflow-ypaddingpadding-bottompadding-leftpadding-rightpadding-toptext-aligntext-anchortext-decorationtext-indenttext-overflowtext-shadowtext-transformtitletranslatewhite-spacewidth
For more information about these attributes, see https://developer.mozilla.org/en-US/docs/Web/CSS/Reference.
Version History
Introduced in R2017bUse the Interpreter name-value argument to enable markup in
the dialog box text. Specify the interpreter as 'html',
'latex', 'tex', or
'none'.
See Also
uialert | questdlg | uifigure | uiprogressdlg
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)