启用和禁用GUI按钮Matlab

时间:2015-05-28 14:09:01

标签: matlab user-interface button matlab-guide

这是一个非常奇怪的问题,因为我很确定逻辑是正确的,但它仍然无效。因此,当GUI启动时,在启动函数中,我使用以下代码行为每个按钮设置大多数按钮,Kbutton,Bbutton等。:

set(handles.Kbutton,'Enable','off');
set(handles.Bbutton,'Enable','off');

然后,当用户点击uitable中的任何单元格时,我使用单元格选择回调来获取有关单元格内容的信息,并重新激活从那时起可以使用的按钮:

set(handles.Kbutton,'Enable','on');
set(handles.Bbutton,'Enable','on');

直到现在一切正常。 然后用户点击一个按钮,比如Kbutton,由于按钮的回调功能,底层功能被执行。一旦方法准备就绪,我想将按钮返回到它们的初始状态,即未激活。所以逻辑告诉我,重新将最初的代码行放在回调函数的末尾并完成:

set(hObject,'Enable','off');
drawnow;
set(handles.BButton,'Enable','off');
drawnow;

上面代码段中的第一行代码,指的是触发回调的按钮,而BButton是GUI中的任何其他按钮。

由于一些奇怪的原因,只有第二个被启用。即触发回调的按钮保持启用状态:/

有没有人遇到同样的问题? 有什么想法吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

尝试更改

set(hObject,'Enable','off');

set(handles.Kbutton,'Enable','off');