Effacer les filtres
Effacer les filtres

Arrange figures in numerical order...

15 vues (au cours des 30 derniers jours)
David Pesetsky
David Pesetsky le 22 Juil 2018
Commenté : Boxuan Zhao le 5 Jan 2021
There's a nice little function on the exchange that sorts figures on the screen, but it's not sorting in numerical order how the Figures are numbed: https://www.mathworks.com/matlabcentral/fileexchange/52774-arrangefigures-handles
This statement I believe...
figureHandles = sort(get(0, 'Children'));
...needs to truly sort in Figure numerical order. Then it would work.
Can it be improved?
Thanks!

Réponse acceptée

Walter Roberson
Walter Roberson le 22 Juil 2018
For HG2, it would be
figureHandles = handle( sort( double(findall(0, 'type', 'figure') ) );
This will find all figures, including the interface frames for apps; if you want only user created figures then change findall to findobj .
This code will sort according to numeric handle. Even in HG2, each graphics object is associated with a double, just like in HG1. And just like in HG1, the handles for figures are not necessarily integers. You cannot generally predict the range of double that will be associated with a figure that was not created with 'IntegerHandle', 'on' or by using figure(INTEGER) to create a figure with that particular integer handle.
  2 commentaires
David Pesetsky
David Pesetsky le 22 Juil 2018
findobj did the trick. Perfect. I'll try to make a shortcut to that function in the quick access toolbar.
Thanks again
Boxuan Zhao
Boxuan Zhao le 5 Jan 2021
Amazing solution, thank you Walter, I've been trying to figure this out for so long!!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Interactive Control and Callbacks dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by