サブシステムにローカル変数を指定する必要があるため、マスクを作成しました。そうすることで、サブシステムに簡単にアクセスできなくなります。右クリックして [Look under mask] に移動するのは、複雑すぎるはずです。
そこで、回避策を考え、次のように構築しました。
「Get deep!」の背後にあるダイアログ コールバック コード チェックボックスは次のとおりです。
myParameter = %Parameter set by checking Get deeper!
path = gcb(gcs);
if strcmp(get_param(gcb,'myParameter'),'on')
open_system(path,'tab');
end
ボックスをチェックするたびに、サブシステムが開かれ、以前にボックスがチェックされていた場合は、サブシステムをダブルクリックするたびに開かれます。したがって、コードは本来あるべきことを行いますが、実際には、このようなことを実現/視覚化する一般的な方法ではありません。
私が欲しいのは、マスクの「マスクの下を見る」ボタンです。そのボタンをクリックするだけで、サブシステムが開きます。基本的に、ボタンは関数を呼び出す必要があります: open_system(gcb(gcs),'tab')
. とても簡単に見えますが、Simulink はこれを実装するオプションを提供しません。誰でも助けることができますか?
現在のソリューションの主な問題は、モデルを実行するたびにすべてのサブシステムが開き、ボックスがチェックされていることです。それは考えではありません。