GUI向けに作成したm-file内部のコールバック関数を別のm-fileスクリプトから呼び出す事はできますか?
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
nobelnambu
am 16 Jul. 2018
Kommentiert: nobelnambu
am 28 Jul. 2018
Matlabで作成したGUIアプリの動作検証のために、ユニットテストのコードを書きたいと考えています。その場合、GUI向けに作成したm-file内に記入されているcallback関数の検証もしなければならないのですが、別のファイルからそれらを呼び出す事は可能でしょうか?
2 Kommentare
michio
am 17 Jul. 2018
GUIアプリはどのように作成されたものでしょうか。GUIDE で作成されたものであれば (例:exampleGUI.m)
exampleGUI('exampleCallback');
と、コールバック関数 (例:exampleCallback)を呼び出すことも可能です。
Akzeptierte Antwort
michio
am 18 Jul. 2018
参考までですが、ローカル関数を実行する方法として、GUIDEから生成された関数の冒頭部分に以下の記述を確認いただけると思います。(以下は R2018a で生成した exampleGUI.m 場合)
% EXAMPLEGUI.m('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in EXAMPLEGUI.M with the given input arguments.
特に入力が必要で無ければ
exampleGUI('exampleCallback');
入力引数が必要であれば、'exampleCallback' に続けて
exampleGUI('exampleCallback',var1, var2, var3);
と指定することができます。hObject, eventdata など GUIDE のオブジェクトをローカル関数内で使用している場合には、、(すいません、手元に適切なGUIが無いため推測になりますが)
figh = exampleGUI;
exampleGUI('exampleCallback',figh.Children(1), var2, var3);
など一度 GUI のオブジェクトを作成しておいて実施するなど、もしかしたら可能かもしれません。
1 Kommentar
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu 対話型コントロールとコールバック finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!