Matlab GUI编辑框输入不工作
因此,基本上,我试图通过在GUI的编辑框中按enter键来提供一个直接打印数据的选项,而不必按与打印数据相关的按钮。但我遇到了一个问题,在提交到按钮之前,它没有正确更新编辑框句柄(例如,我将键入23并按enter键,这将绘制23个数据周期,但当前寄存器为空字符串)。但是如果我按两次enter键,那么它确实正确地执行了函数。我得到的代码是:Matlab GUI编辑框输入不工作,matlab,Matlab,因此,基本上,我试图通过在GUI的编辑框中按enter键来提供一个直接打印数据的选项,而不必按与打印数据相关的按钮。但我遇到了一个问题,在提交到按钮之前,它没有正确更新编辑框句柄(例如,我将键入23并按enter键,这将绘制23个数据周期,但当前寄存器为空字符串)。但是如果我按两次enter键,那么它确实正确地执行了函数。我得到的代码是: function edit1_KeyPressFcn(hObject, eventdata, handles) currentKey = get(gcf,'C
function edit1_KeyPressFcn(hObject, eventdata, handles)
currentKey = get(gcf,'CurrentKey');
if currentKey == 'return'
pushbutton1_Callback(handles.pushbutton1, eventdata, handles)
guidata(gcf,handles)
end
有什么想法吗?谢谢 您使用编辑框上的哪个属性来检索输入的数据 您应该发现“string”属性与用户输入的内容匹配,但“value”属性包含编辑框中的数据,然后才开始编辑 处理此问题的一种方法是调用:
set(handles.edit1,'value',str2double(get(handles.edit1,'string')))
在调用按钮回调之前。我曾经遇到过这个问题。我认为有某种3d派对DLL可以读取击键。如果我能回忆起来,我会告诉你的。