Azzera filtri
Azzera filtri

variable: global or in guidata

1 visualizzazione (ultimi 30 giorni)
Juan il 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?

Risposta accettata

Daniel Shub
Daniel Shub il 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:

Più risposte (2)

Alex il 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 il 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.


Community Treasure Hunt

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

Start Hunting!

Translated by