Can I rely on the Handles numeration?
Afficher commentaires plus anciens
I have a complex GUI (built with GUIDE) and among others, there are 10 pushbuttons.
Their handles are defined by the GUI. I have noticed that the difference between 1 button handle to the other is 1.
Can I relay on that? I re-ran the GUI several times and the handle values change but the delta remains.
I want to set the buttons 'Value' field in a loop or something like that.
Something like that:
first_h = handles.Button1
for i=1:10
Value = get(first_h + i ,'Value)
end
Réponse acceptée
Plus de réponses (2)
Daniel Shub
le 26 Fév 2013
0 votes
I wouldn't rely on the handle ids behaving in any sensible way unless you set them at the outset. There is no reason to have to rely on them either. You should either set the handles at the outset and save them in a reasonable place within the appdata or add meaningful tags that allow you to then find the buttons at a later time.
2 commentaires
Nimrodb
le 26 Fév 2013
Walter Roberson
le 26 Fév 2013
thishandle = handles.(sprintf('StatusButton%d', CurrProgress));
the cyclist
le 26 Fév 2013
0 votes
No, I don't think you can rely on that. In particular, most object handles are actually floating point numbers, not integers, and you should use the full precision to access them. (See, for example, this page: http://www.mathworks.com/help/matlab/creating_plots/accessing-object-handles.html.)
Catégories
En savoir plus sur Creating, Deleting, and Querying Graphics Objects dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!