ユーザがMatlab Guiを使用してクリックした場所に基づいて画像を処理する必要があります。私はこのようなButtonDownFcn
を使用することをお勧めの例を発見した:Matlab guiで「ButtonDownFcn」を使用するときにハンドルをサブ関数に渡す
function buttonSelectSuperpixels_Callback(hObject, eventdata, handles)
h = handles.myCanvas;
set(h,'ButtonDownFcn',@position_and_button);
をし、このようにサブファンクションposition_and_button
でクリックされたポイントを処理する:私はいくつかの他の変数を処理する必要があるだろうしかし
function position_and_button(hObject,eventdata)
Position = get(ancestor(hObject,'axes'), 'CurrentPoint');
Button = get(ancestor(hObject,'figure'), 'SelectionType');
その最後のサブ関数。変数handles
をposition_and_button
に渡して更新することはできますか?
私はちょうど引数としてhandles
を渡そうとしましたが、うまくいかないようです。
セットを 'set(h、 'ButtonDownFcn'、@(x、y)position_and_button(x、y、handles));'に変更し、ハンドルを受け入れるようにサブ関数を更新するとどうなるでしょうか?ハンドル構造体は常にサブ関数 'buttonSelectSuperpixels_Callback'に見られるようになります –