我是Matlab GUI的新手,我有以下问题。 我已经声明了一个滑块控件和他的属性,并且我已经在回调和PostSet事件处理程序中添加了一个listerner(我认为它在技术上称为事件处理程序),如下所示:
function [] = HandlerSlide()
%HANDLERSLIDE Summary of this function goes here
% Detailed explanation goes here
clf;
due = '2';
hSlider = uicontrol( ...
'Style','slider', ...
'Callback',@(s,e) disp(['hello ',num2str(due),' asdad']),...
'Position', [400 30 200 20] ... %[x,y, widht, height]
);
hListener = addlistener(hSlider,'Value','PostSet',@pippo);
end
function [] = pippo(s,e)
disp('ciao');
end
正如您所看到的,我在Callback处理程序(匿名函数)中使用了参数“ due ”。现在我想传递参数以在“ pippo ”函数中使用而不将其声明为匿名函数。可能吗? 换句话说,我想像这样声明“ hListerner ”:
hListener = addlistener(hSlider,'Value','PostSet',@pippo{parameter1,parameter2, etc ...});
function[] = pippo(s,e, parameter1, parameter2, etc ...)
除了如何在主体中使用“ pippo ”返回的值?
提前谢谢你:D
答案 0 :(得分:0)
句柄函数中的输入添加如下:
hListener = addlistener(hSlider,'Value','PostSet',{@pippo,parameter1,parameter2});
你必须在功能中小心,因为"参数1"不是第一个输入,而是第三个输入(在源和事件数据之后)。