variable: global or in guidata

3 Ansichten (letzte 30 Tage)
Juan
Juan am 17 Nov. 2011
which is more useful in gui programming, to save the variable in handles structure or to make it global to have access on it?

Akzeptierte Antwort

Daniel Shub
Daniel Shub am 17 Nov. 2011
I would suggest you avoid global variables. They are more powerful than what you need, and therefore probably not the best choice. The FAQ has a couple of suggestions:

Weitere Antworten (2)

Alex
Alex am 17 Nov. 2011
Global variables are often a bad choice when programming.
Another option for sharing data through a gui is basing the gui in a class. This is my preferred method.

Jan
Jan am 17 Nov. 2011
In case of problems it is hard to find the code, which is responsible for the last changes in the global variables. In addition the uasge of globals lead to problems, if you want to open multiple instances of the GUI.
Therefore I prefer guidata - which calls setappdata internally, so you can call it directly also. Using the figure's UserData is equivalent. For conventional reasons I use the UserData for static values as handles and the application data for dynamic values like the current choice of variables etc. But this is a question of taste.

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by