MATLAB Answers

How to avoid truncating my GUI window

23 views (last 30 days)
KAE
KAE on 11 Aug 2017
Edited: KAE on 17 Aug 2017
I wrote a standalone executable of a GUI on machine #1 and it worked fine, but on machine #2 the GUI window appeared much larger, even though the screen size and display resolution were the same. In addition the GUI window on #2 was truncated on the right so some content was missing. I originally chose Options > Resize behavior > Non-resizable because the resulting size units are characters which is supposedly better for cross-platform compatibility. I switched to Options > Resize behavior > Proportional. The entire GUI window was displayed on #2, but elements like radio buttons fell out of their bounding boxes and looked bad. [If you try this, save your original fig file with another name since you won't be able to undo the layout changes].
Next I restored the Non-resizable option so my GUI was in character units again, then changed the display scale of machine #2 so it was the same as machine #1 (in Windows 10, Control Panel > Display > Scale and Layout > Change the size of text, apps, and other items). Then the GUI showed up correctly on machine #2.
However I would like a solution that works regardless of the display setup of machine #2, since I won't always be able to control that. Does it exist?
  4 Comments
KAE
KAE on 17 Aug 2017
Drat, I had to ship out the other laptop and can no longer check this. The laptop I wrote it on has 166 DPI based on this lookup tool.

Sign in to comment.

Accepted Answer

Faiz Gouri
Faiz Gouri on 17 Aug 2017
Since the size of a pixel can vary on different computer displays, using the default figure Units of pixels does not produce a UI that looks the same on all platforms. For this reason, GUIDE defaults the Units property for the figure to characters. Refer the following document for more info-
Also, sometimes the text setting size of the screen affect the display. Make sure it is set to 100%.
  1 Comment
KAE
KAE on 17 Aug 2017
You are correct that the text setting size was different between the two machines, and when I reset it, the GUI was no longer truncated. (My GUI is in character units). However I won't always be able to set the text setting size on laptops running my GUI executable. Is there some way to make sure the GUI won't be truncated, regardless of the other computer's text setting size?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!