Global (shared) variables in Matlab GUI code behind. Is there better way to do it then using handles structure?

喜夏-厌秋 提交于 2019-12-18 09:05:19

问题


I have spent some time lately creating complex Matlab GUI tool. I'm using GUIDE GUI builder.

I dislike the way Matlab manages global variables in code behind (the .m file with functions). If I want to share data between function calls I have to store them in handles structure that is given as a parameter to every function call. I consider it to be bug prone as I have to mind storing and updating handles all the time. It is rather unnatural for me to handle global variables this way. Using appdata is even worse.

Is it possible to use class as a code behind for GUI? All the callbacks would be methods so they would receive obj as a parameter and I could store global variables in class properties. This seems to me to to be much clearer.

It is just an idea and it may be not possible at all... But if there is better practise how to deal with global variables in Matlab GUI then please suggest it.


回答1:


Example using a MATLAB Class to control a GUI from MATLAB File Exchange.



来源:https://stackoverflow.com/questions/11595040/global-shared-variables-in-matlab-gui-code-behind-is-there-better-way-to-do-i

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!