Resizing GUI and components to keep original layout.
Show older comments
How do I automatically resize my GUI for different window screen resolutions? I've read other answers but they only say to make the GUI full screen or some other size relating to the size of the whole screen. However, my static texts do not resize even though I have them checked as normalized. How can I make sure everything resizes automatically to account for any screen changes?
Answers (1)
Image Analyst
on 3 Sep 2017
In GUIDE, make sure all your components have a Units property of 'normalized'. Then, in your opening code, if you have Windows, call MaximizeFigureWindow (attached). If you don't have Windows, use this code that makes the window larger but doesn't technically "maximize" it.
% Set up figure properties:
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0, 0.04, 1, 0.96]);
% Get rid of tool bar and pulldown menus that are along top of figure.
% set(gcf, 'Toolbar', 'none', 'Menu', 'none');
% Give a name to the title bar.
% set(gcf, 'Name', 'Demo by ImageAnalyst', 'NumberTitle', 'Off')
6 Comments
awezmm
on 3 Sep 2017
Image Analyst
on 3 Sep 2017
That is controlled by the setting in GUIDE for fontsize. The font size does not scale with window size since it's controlled by the operating system. No windows program does, that I know of, so MATLAB is not unique in that regard.
Image Analyst
on 3 Sep 2017
Yes. Just set it. For example:
handles.btnGo.FontSize = 20;
zhiying zhou
on 15 Apr 2020
how to do when i use MATLAB Appdesigner to create app?
Image Analyst
on 15 Apr 2020
I think it uses app instead of handles. So try
app.btnGo.FontSize = 20;
Categories
Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!