File Exchange

image thumbnail


version 2.3 (3.32 KB) by Adam Danz
Change the fontsize and other text properties in a msgbox(), errordlg(), warndlg() etc.


Updated 24 Jul 2019

View Version History

View License

Editor's Note: This file was selected as MATLAB Central Pick of the Week

h = msgbox('Hello world (20 pt font)', 'Example');
msgboxFontSize(h, fontsize)
msgboxFontSize(h, fontsize, 'FontName', 'Consolas', 'Color', 'b')
msgboxFontSize(h, fontsize, 'ignorebuttons', true) % does not apply change to buttons.

The text properties in Matlab's msgbox(), errordlg(), warndlg(), etc cannot be directly
edited and the default 'fontsize' is quite small. This function gets around that problem
by searching for text within the msgbox handle, changes its fontsize, and then changes
the window size to fit the new fontsize. The position of the lower, left corner of
the msgbox will not change and the resize property is turned on. Additional name-value
text properties can be set except for 'units' (see examples).

Outputs include the handle to the text object and handles to all pushbuttons. The help section
shows how to get the handle to the icon in errordlg & warndlg as well.

List of text properties:

** Also see supersizeme() which contains an interactive GUI with a slider that allows you to scale the font size of all text within a figure or axes.

Cite As

Adam Danz (2021). msgboxFontSize (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (6)

Jesús Lucio

Thanks a lot. Something (or similar) that Mathworks should have done long time ago.

Ajay Kumar

Corey Crisp

Adam Danz

Thanks, Jiro. I added the conditional the suppresses the set() outputs. Applying properties to the buttons is a somewhat larger task since the button placement will have to be carefully manipulated so that larger buttons do not overlap with the main text or other buttons. That will take a bit more time than I have right now. In the meantime, I've included a 2nd output that lists handles to all buttons so the user can change the color, fontsize, fontname, etc manually. In the help section, I've also included two lines of code that shows how to get the handle to the icon and change its size.


Great utility!

One code suggestion and one feature request.
Around line 91, you have

set(th(i), unmatchNameVal{:});

I suggest you wrap that line with the following

if ~isempty(unmatchNameVal)
set(th(i), unmatchNameVal{:});

This will prevent the set function from displaying output when there are no unmatched name-value pairs.

As for feature request, it would be great if you could also scale the font of the buttons (Okay, cancel, etc.). Also, this could be challenging, but if you could scale the icons used in errordlg, warndlg, etc.

Anyway, thanks for the tool!


Hey thanks!!

MATLAB Release Compatibility
Created with R2014a
Compatible with R2014a and later releases
Platform Compatibility
Windows macOS Linux

Inspired: Spur-Gear-Designer

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!