App designerで作成したGUIのテーブルデータをスクリプトファイルで取り出したい
6 ビュー (過去 30 日間)
古いコメントを表示
Shumpei Hosokawa
2023 年 11 月 9 日
コメント済み: Shumpei Hosokawa
2023 年 11 月 13 日
表題の件につきまして質問があります.
App designerで値を入力するGUIを作成しています.以下に添付した画像がサンプルの画面となります.参考文献は以下の通りです.
ここで,Read excel datasを押すとX, Y, Zのコラムに値が読み込まれます.そしてRunボタンを押したらスクリプトファイル側でX, Y, Zのコラムのデータを読み込みたいです.
参考文献のコードを元に開発しています.また,Read excel dataボタン内のコードは以下の通りです.パブリックプロパティ内にテーブルデータの変数を宣言して,RunButtonPushedを押したときにスクリプトファイルに読み込めるように共有する方法がよいでしょうか?テーブルデータについては参考文献内に載っていなかったためやり方がよくわかっていません.
お手数おかけしますがよろしくお願いいたします.
properties (Access = public)
% Input Parameter GUI
sample1
% ここにTableデータの変数を宣言する?
end
% Code that executes after component creation
function startupFcn(app)
uiwait(app.UIFigure) % GUI を起動した時にプログラムを一時停止させる
end
% Button pushed function: Button
function ButtonPushed(app, event)
app.T = app.EditField.Value; % パラメータをパブリックプロパティに代入
uiresume(app.UIFigure) % コードの再開
end
function ReadexceldatasButtonPushed(app, event)
app.UITable.Data = readtable("my_parameters.xlsx");
end
% Code that executes after component creation
function startupFcn(app)
uiwait(app.UIFigure) % GUI を起動した時にプログラムを一時停止させる
end
% Button pushed function: RunButton
function RunButtonPushed(app, event)
% Edit parameters in GUI window
app.sample1Value= app.sample1.Value;
uiresume(app.UIFigure) % resume code
end
0 件のコメント
採用された回答
Kojiro Saito
2023 年 11 月 13 日
編集済み: Kojiro Saito
2023 年 11 月 13 日
テーブル型の場合も参考文献と同じようにパブリックプロパティとしてスクリプトに渡すことができます。
Runボタンを押したときのコールバックをパブリックプロパティ(sample1)を使うように変えてみてください。
% Button pushed function: RunButton
function RunButtonPushed(app, event)
% Edit parameters in GUI window
app.sample1 = app.UITable.Data; % テーブル型をパブリックプロパティに格納
uiresume(app.UIFigure) % resume code
end
呼び出し元のスクリプト
h = myapp; % GUI を出力引数付きで起動 (myapp.mlapp というファイル名の場合)
T = h.sample1; % パブリックプロパティの値を取得
close(h.UIFigure) % GUI を閉じる
disp(T)
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で uifigure ベースのアプリ についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!