按钮仅在

时间:2015-05-07 05:35:31

标签: matlab matlab-guide

我对MATLAB的指南中的回调函数有疑问。按下按钮时,我执行以下代码:

handles.xPos=handles.xPos+1
addX = handles.xPos
handles.shape2 =fill ([-2+addX 1+addX 1+addX -1+addX], [1 1 -1 -1], 'r');

这有效,但只有一次(旧的形状仍然存在,但这是一个单独的问题)。我已经完成了调试代码并确定按下按钮时总是调用回调函数,但由于某些奇怪的原因,在第一次按下按钮后对位置的更改没有影响。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

您必须通过 guidata更新句柄,以便对handles进行修改:

guidata(hObject,handles);

否则handles的修改会在回调执行结束时丢失。

最佳