最近、複雑な Matlab GUI ツールの作成に時間を費やしています。GUIDE GUI ビルダーを使用しています。
Matlab がコード ビハインド (関数を含む .m ファイル) でグローバル変数を管理する方法が嫌いです。関数呼び出し間でデータを共有したい場合はhandles
、すべての関数呼び出しにパラメーターとして与えられる構造にデータを格納する必要があります。常に保存と更新を気にしなければならないので、バグが発生しやすいと思いますhandles
。このようにグローバル変数を扱うのは、私にとってかなり不自然です。appdataを使用するのはさらに悪いことです。
クラスをGUIのコードビハインドとして使用することは可能ですか? すべてのコールバックはメソッドになるためobj
、パラメーターとして受け取り、グローバル変数をクラス プロパティに格納できます。これは私にはもっとはっきりしているように思えます。
それは単なるアイデアであり、まったく不可能かもしれません...しかし、Matlab GUIでグローバル変数を処理する方法のより良い方法があれば、それを提案してください。