1
我在Matlab中構建了此GUI以與數據交互。我創建了一個數據環境對象來促進與數據的交互。該對象觸發事件,我希望GUI可以聽取其中的一些事件。所以,正如你在下面的代碼中看到的那樣,我使用指令addlistener將事件鏈接到本地函數。問題是這個本地函數無法訪問GUI句柄,你有沒有想過如何解決這個問題?謝謝在Matlab中由gui之外的對象觸發的回調函數中訪問gui句柄
function varargout = myGUI(varargin)
...
end
function varargout = myGUI_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
dataEnv = getappdata(hObject.Parent, 'ratData');
addlistener(dataEnv,'TrialChanged',@respond_TrialChanged);
end
function respond_TrialChanged(dataEnv, eventData)
do_something(handles) % I want to access the GUI handles here
end
function do_something(handles)
...
end
它並不是我解決這個問題的最優雅的方式,但它工作得很好!謝謝! – PierreE 2014-12-19 21:23:23