Appdesigner 使用時のパスの設定

10 次查看(过去 30 天)
lattice
lattice 2019-11-4
编辑: lattice 2019-11-5
長年 ui*** を使って継ぎ足して作ってきた GUI を AppDesigner (R2019a) に移行中です.
だいたい動くようになったのですが,python のコードを呼ぶコールバックを使用すると「内部的な問題があるため閉じる必要があります」と表示され MATLAB が落ちます.
python のコードを呼ぶための関数mファイルをmatlab本体で直接叩くのは問題ありません.しかも一度,本体で python が機能した後,AppDesigner を起動してGUIからコールバックを呼ぶと機能しているような気がします.
なんとなく,PATH の設定に問題があるような印象もあるのですが,いまいちわかりません.
現状では startupFcn の中で 必要な関数の入っている場所を addpath しています.python の path は コールバックで使用している関数内で下記のように設定しているのですが
mypath = "/Path/to/Python_Mymodules/";
pypath = py.sys.path;
if count(pypath, mypath) == 0
insert(pypath, int32(0), mypath);
end
これも startuoFcn に入れるべきでしょうか?
  1 个评论
lattice
lattice 2019-11-5
编辑:lattice 2019-11-5
ひとまず .mlapp ファイル内の startupFcn に python path の設定を入れると動いているように思えます.
https://jp.mathworks.com/help/matlab/app-designer.html のページのアプリの作成例も大変役に立つのですが,たくさんボタンや plot を並べた GUI を作る場合,全部のコードを mlapp ファイルに入れるのは,扱いにくいので,外部ファイルを参照する場合のファイルの置き方や,そのときのパスの設定方法などが App Designer の公式の説明ページにあると嬉しいです.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB の Python ライブラリ 的更多信息

产品


版本

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!