我正在遇到一个奇怪的问题,我有一个不合适的问题,我希望从网络输入获得新的输出,当我改变输入值以获得新输出时,我必须按两次按钮。我搜索过它有很多关于这个问题的问题,我仍然没有得到确切的答案。你们中的任何人都可以告诉我如何弄清楚这个问题吗?
以下是适用的代码:
t = uitable('Parent', f, 'Position', [0 60 260 400],...
'Data',table_data,...
'ColumnName',cnames,...
'RowName',rnames,...
'ColumnFormat',ColumnFormat,...
'ColumnEditable',ColumnEditable,...
'Enable','on',...
'Visible','on');
handles.pushbutton1 = uicontrol('Style','Pushbutton',...
'Units','Pixels',...
'Position',[210 470 100 30],...
'String','Simulate Network',...
'callback',@Simulate_Callback);
例如,当我将Satznummer更改为新值时,我必须按两次模拟网络,直到获得新输出。
我很感激任何答案。感谢。
答案 0 :(得分:1)
在uitable中,当您编辑一个值时,您需要将焦点从编辑字段更改为图形,然后只有一个按钮按下注册。
通过双击按钮,您将在第一次单击时更改焦点,并在第二次单击时激活按钮。您也可以通过点击返回或点击图中的任何其他位置将焦点更改为图形。
更改焦点事件是必要的原因是,在您编辑时,按下按钮会导致文本显示/消失,而不是执行您可能已绑定到KeyPress
回调的任何其他操作这个数字。此外,更改焦点是激发表格回调的内容。