コードの先頭に設定されている42個の定数の状態に応じて、さまざまな方法で実行できる関数があります。これまで、さまざまな条件下で関数を実行したい場合は、MATLABコードを開き、コードの先頭で定数を調整するだけです。
42の定数は追跡することがたくさんあり、私は特定のスイッチを誤ってオンのままにして実験を実行していることに気づきました。明らかな解決策は、入力を1か所で視覚的に確認できるGUIを構築することです。GUIは、単純にパラメータ設定ウィンドウであり、下部に大きな「実行」ボタンがあり、入力(42個すべて!)を受け取り、それらをメイン関数に渡します。
素敵なGUIを構築するために使用したGUIDEに出くわしました。関数を起動するためのボタンを取得できましたが、実際の変数をテキストボックスに入力し、チェックボックスの状態をメイン関数に渡すのに苦労しています。
「コールバック」と関係があることは理解していますが、ドキュメントは不明確であり、変数が現在のウィンドウのコンテンツを調整するGUIの構築に関係しているようです。
基本的な例として、私はチェックボックスを使用しています。チェックボックスをクリックすると、関数checkbox1_Callback(hObject、eventdata、handles)が実行されることを知っています。この関数を変更して、変数'state'を返すようにしました。これは、関数中に次のように設定されます。
state = get(hObject,'Value')
これにより、チェックボックスをクリックするたびに、状態が変更されたことを示すメッセージがポップアップ表示されます。もちろん、これが発生するとすぐに、関数は終了し、変数は破棄されます。他の場所で変数を受け取る方法はないようです。.mコードには、checkbox1_Callback関数の呼び出しがどこにも含まれていないため、入力をどこで受け取ることができるかわかりません。
[実行]ボタンをクリックしたときにcheckbox1_Callback関数を呼び出すことができればと思っていましたが、コールバックに渡す引数がわかりません。
明らかに私はここで基本的な何かを見逃していますが、ドキュメントはこれを簡単にしません!任意のポインタをいただければ幸いです。