GUI resize pixel limit

3 vues (au cours des 30 derniers jours)
Tom Tang
Tom Tang le 24 Juil 2012
Hi, I am pretty new to Matlab and I am making a gui. I want the gui to be resizable. Everything works fine until someone tries to make the gui really small so all the panels and works get messed up. Is there anyway to stop the users from making the gui too small? Say setting 800*600 is the minimum one can resize it to. Thank you.

Réponses (2)

Walter Roberson
Walter Roberson le 24 Juil 2012

Jan
Jan le 25 Juil 2012
Modifié(e) : Jan le 26 Juil 2013
I've tried several methods without success to limit the size of a figure in the ResizeFcn. In older Matlab versions the event was triggered when the mouse is moved, while for newer versions the event appears, when the mouse is released. If a method worked when the resize-handle on the right bottom is dragged, it failed, when the left figure edge is dragged.
The only stable method I've found is the undocumented Java interface:
jFrame = get(handle(gcf), 'JavaFrame');
try
jProx = jFrame.fFigureClient.getWindow;
catch
jProx = jFrame.fHG1Client.getWindow; % [EDITED] Fallback
end
jProx.setMinimumSize(java.awt.Dimension(200, 200));
If TMW really decides to omit the JavaFrame property in the future, all these tricks become useless. Therefore please send a request to the technical support, that you use this feature and want it to be supported in the future, see http://www.mathworks.com/support/contact_us/dev/javaframe.html . When you get the reply, that figures and GUIs are not handles by Java, but by the faster, smarter and nicer Qt framework, please post this as soon as possible. :-)
  2 commentaires
Tom Tang
Tom Tang le 25 Juil 2012
How do I implement this in matlab? I have never used java in matlab. Thank you.
Jan
Jan le 26 Juil 2013
If you still wait for the answer: This is pure Matlab code and you can insert it directly to your code.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Migrate GUIDE Apps dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by