3

私は MATLAB の GUI プログラミングが初めてなので、私の質問はそれに関連しています。

GUIDE を使用して GUI を作成するとします。作成機能では

MyGUI_OpeningFcn(hObject, eventdata, handles, varargin)

私は別の関数を呼び出し、

SamplingRate_Callback(handles.SamplingRate, eventdata, handles)

として定義

function SamplingRate_Callback(hObject, eventdata, handles)

SamplingRate_Callback はいくつかの変数を設定します。

handles.a = 1;
handles.b = 2;
handles.c = 3;

構造は関数handles内で正しく更新されSamplingRate_Callbackます。私が抱えている問題は、関数を次のように変更しない限り、

function handles = SamplingRate_Callback(hObject, eventdata, handles),

呼び出し元の関数にデータを返すことができませんMyGUI_OpeningFcnguidata(gcf, handles)と を使用してみguidata(hObject, handles)ましたが、どちらも機能しません。

この問題に光を当てることができますか?

また、いつguidata(gcf, handles)vs.を使用すればよいかわかりませんguidata(hObject, handles)

ご協力いただきありがとうございます!

4

2 に答える 2

0

関数をどのように呼び出しSamplingRate_CallbackますMyGUI_OpeningFcnか? この場合、戻り値を定義していないように思えますvalues

修正は次のようになります。

function [handles] = SamplingRate_Callback(hObject, eventdata, handles)

そして、次SamplingRate_CallbackMyGUI_OpeningFcnように呼び出します。

handles = SamplingRate_Callback(handles.SamplingRate, eventdata, handles);
于 2012-04-18T08:08:00.827 に答える
0

データの意味に応じて、getappdatasetappdataを使用して、オブジェクト自体との間でデータを保存およびロードできます (通常、データがプロットされる軸を使用します)。

于 2012-05-22T07:48:40.103 に答える