MATLAB Answers

Edit text as input in GUI

75 views (last 30 days)
tony karamp
tony karamp on 11 Apr 2013
Hello,
I have a GUI (created in GUIDE), and I want to be able to have a edit text that I assign values to it and when I hit on other buttons, that value will be used. The problem is that it's not actually a number, but a set of numbers, i.e:
1:2:33
or even multiple inputs such as:
1:5,22:52, 66:68 etc
I have tried the below code but didn't work
function edit3_Callback(hObject, eventdata, handles)
% hObject handle to edit3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of edit3 as text
% str2double(get(hObject,'String')) returns contents of edit3 as a
double
handles.back= str2double(get(hObject,'String'))
any good suggestions? TYIA

  0 Comments

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 11 Apr 2013
Don't do anything in the edit field callback. Do everything in the button callbacks where you want to use the edit field. For example in the callback for button1:
editText = get(handles.edit3,'String');
% Now parse it with sscanf(), allwords, or whatever.
myNumberArray = ......% whatever...
Find allwords here: allwords()

  7 Comments

Show 4 older comments
tony karamp
tony karamp on 12 Apr 2013
I made the modifications to the mfile, but when I try to run the GUI I get an error saying:
Error using ==> sscanf
Not enough input arguments.
Error in ==> DSSGUI>startbutton_Callback at 156
fharmArray = sscanf(FeditText);
Error in ==> gui_mainfcn at 66
feval(varargin{:});
Error in ==> DSSGUI at 42
gui_mainfcn(gui_State, varargin{:});
Error in ==> @(hObject,eventdata)DSSGUI('startbutton_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
tony karamp
tony karamp on 12 Apr 2013
I used the eval function after all and works perfectly...

Sign in to comment.

Categories