我想連接兩個axes.handles,這樣當鼠標單擊一個時,另一個也會做第一個操作。我有一個外部函數執行我想要做的事情,當點擊鼠標時。我只需要更新GUI中的兩個句柄,以便在單擊一個軸時它將執行相同的操作。在Matlab中連接兩個手柄
在主界面
function testminiproj_OpeningFcn(hObject, ~, handles, varargin)
handles.output = hObject;
handles.done=0;
guidata(hObject, handles);
setappdata(0,'figureHandle',gcf);
setappdata(gcf,'axesHandle1',handles.axes6);
setappdata(gcf,'axesHandle2',handles.axes7);
這是我的外部函數是回調到主界面,通過調用MOUSEMOTION;
function varargout = mousemotion(this,varargin)
%// get the figure handle from the application main data
figureHandle = getappdata(0,'figureHandle');
%// get the axes handle from the figure data
axesHandle1 = getappdata(figureHandle,'axesHandle1');
%// get the axes handle from the figure data
axesHandle2 = getappdata(figureHandle,'axesHandle2');
global rdata;
if nargin<1
set(gcf,'WindowButtonDownFcn','mousemotion(''down'')');
set(gcf,'WindowButtonUpFcn','mousemotion(''up'')');
set(gcf,'WindowButtonMotionFcn','');
感謝任何幫助。我試圖把問題放在一邊很糟糕。希望有人能幫助。謝謝。
您想寫set(axesHandles,...)而不是set(axesHandle1,..)和set(axesHandle2,..)。我對嗎? – HebeleHododo
是的。我想鏈接這兩個軸手柄,以便當我對其中一個執行一個動作時,另一個也會跟隨。 – user1953847