MATLAB Answers

Keep only a specific figure at the same position after resizing a Appdesigner app

20 views (last 30 days)
Fabian Gock
Fabian Gock on 13 Aug 2018
Commented: Greg on 12 Sep 2018
I want the logo of my company in the right top corner of the GUI. But because I want the components to change size, when the GUI size is changed by the user I have the ticket the respective checkbox in the UI Figure Properties.
Unfortunately this leads to a displacement of the logo (uiaxes) and the GUIs Title which is a label.
I tried to use the UI FIGURE SIZE CHANGED callback to calculate the new position of these two components. But this doesn't work. Maybe the automatic relocation/resizing is prioritized?
Thanks in advance for any help!
-Fabian

  3 Comments

Fabian Gock
Fabian Gock on 13 Aug 2018
Okay, so the warning ...
Warning: 'SizeChangedFcn' callback will not execute while 'AutoResizeChildren' is set to 'on'.
...confirmed my assumption.
Is there any workaround for this?
Greg
Greg on 12 Sep 2018
It sounds like you got it all. You can leave AutoResizeChildren on, which essentially uses a cookie-cutter SizeChangedFcn that is slightly smarter than using normalized position units back in GUIDE. Or, you can turn it off, and write the entire SizeChangedFcn callback yourself. Depending on the complexity of the app, I'd probably just let the axes containing the company logo get bigger.
It is a shame each component doesn't have a ResizeWithFigure property for exactly this purpose. Maybe in a future release...

Sign in to comment.

Answers (0)

Sign in to answer this question.

Products


Release

R2017b