0

多くのサブプロットのx範囲を同時に変更するスクロールバーを作成しようとしています。

kids = get(gcf,'Children');
 h=uicontrol('style','slider',...
'units','normalized','position',Newpos,...
'callback',{@slide_axes,kids},'min',0,'max',xmax-chunkDuration);

Update_axesは同じファイルで定義されています:

function slide_axes(h)
 set(h,'xlim',get(gcbo,'value')+[0 20000]); 

終わり

ただし、次のエラーが発生します。

??? Error using plot_scroll>slide_axes
Too many input arguments.

??? Error while evaluating uicontrol Callback

FEXで、コールバックが任意のコールバック関数に2つの引数を渡す可能性があることを読みました。ただし、の署名をに変更するslide_axesslide_axes(h,evt)、エラーが残ります。

4

1 に答える 1

2

渡す引数 (hおよびevt) は MATLAB の既定値です。コールバック関数に追加の引数を渡したい場合は、 と の後にそれらを記述する必要がありhますevt。このような:

function slide_axes(h, evt, k)
    % k is kids.
end
于 2013-01-16T13:15:36.347 に答える