2012-03-25 5 views
1

私はmatlabでGUIプログラムを作成していますが、変数をテストして適切にインポートされているかどうかを確認し、インポートされた変数のさまざまな部分にアクセスする方法をテストしたいと思います。 MATLABデスクトップのワークスペースウィンドウに表示される変数 主な問題は、プログラム変数を実行した後にmfileエディタで共通のプログラムを書き込むと、ワークスペースウィンドウに表示されますが、GUIプログラムについては真ではない そして、私のプログラムをパスから ファイル>ワークスペースを名前を付けて保存... をMFileエディタで開き、デスクトップにこのアクセスファイルを開こうとします。 変数が作成されていません GUIのワークスペースにはどのようにアクセスできますか?GUIのワークスペースをcurrendワークスペースとして設定

答えて

1

検査のためだけの場合、最も簡単な方法はuse the debuggerです:GUIコールバックの1つにブレークポイントを設定し、コードの実行を中止し、ワークスペースなどを検査することができます。

GUIでメインワークスペースにデータを戻す場合は、オープン機能の最後にuiwait(hObject)行を追加します。次に、例えばOKボタンには、myDataという変数をGUI出力に送信するためのhandles.Output=myData; guidata(hObject,handles);という行と、uiresume(hObject)という文字列が必要です。こうすることで、GUIをmyData = myGUI;と呼び出すことができ、ベースワークスペースのmyDataはOKボタンがクリックされたときにOKコールバックが与えるデータで満たされます。

注:関数は、内部変数ではなく出力を基本ワークスペースに割り当てます。ですから、あなたが「エディタでの関数」と呼んでいるのは、実際に呼び出されるワークスペースの内容にアクセスして変更するスクリプトだと思います。

関連する問題