Reading data from text box

9 views (last 30 days)
Steven
Steven on 19 Dec 2011
I am simply trying to get user inputted data from a text box and read that data in a push button. Shouldn't it be as simple as a get(handles.DisplayNumber,'String'); function in the push button?
function DisplayNumber_CreateFcn(hObject, eventdata, handles) %text box
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in Lookup.
function Lookup_Callback(hObject, eventdata, handles) %Push button
N = get(handles.DisplayNumber,'String');
  3 Comments
Muhammad
Muhammad on 1 Aug 2013
This is a very stupid answer to a question to reading an editbox. no where it is mentioned how editbox data is to be retrieved. He is talking about background color and everything and not the main thing that is required.
Jan
Jan on 1 Aug 2013
Edited: Jan on 1 Aug 2013
No, Muhammad, I do not agree. The answer, independent of which answer you actually mean, is neither stupid nor very stupid. Naz's answer solves the problem exhaustively and Steven has accepted it as a solution.
It would be polite if you do not post harsh opinions about the quality of other answers, but offer better solutions, if you think you know one. Thanks.

Sign in to comment.

Accepted Answer

Naz
Naz on 19 Dec 2011
Yes. However, as soon as the button function is executed, your N is deleted. If you want to keep the data in memory, you should include the data in the main struct:
handles.N = get(handles.DisplayNumber,'String');
and then make sure to save it before leaving the fucntion:
guidata(hObject, handles);
And from that point on you should reference your variable as handles.N
The reading of the value from the textbox is correct. I would delete your button and the textbox and create new ones just to make sure I reference the correct objects. Otherwise, go over the objects and check if the tags correspond to the names you reference in the code. Also, every time you make changes in the GUI, you need to save it in addition to your .m file
  4 Comments
Steven
Steven on 19 Dec 2011
The purpose of the entire program is to take a picture from my computer modify it bases on some information contained in displaylist variable and display it.
Okay the following is the entire Guide I am working with
function DisplayNumber_Callback(hObject, eventdata, handles)
function DisplayNumber_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
% --- Executes on button press in Lookup.
function Lookup_Callback(hObject, eventdata, handles)
N = get(handles.DisplayNumber,'String');
[displaylist,type] = lookup(N);
the lookup function is written by me and is as follows
function [displaylist,type] = lookup(N)
N = num2str(N);
String = ['Defect Data\displaylist',N];
load(String)
I plan on taking the output of the lookup function and running an Imshow function to display an image all under the lookup push button so I won't need to store it as a handle although I am not opposed to doing that. I am pretty sure what ever I am doing wrong is a simple mistake. I debugged the program and the error occurs on the line where I am trying to extract the information from N.
Steven
Steven on 19 Dec 2011
Started from scratch and it worked
must have edited the wrong thing thanks for everyone's help!!

Sign in to comment.

More Answers (1)

Eric Keller
Eric Keller on 19 Dec 2011
don't you have to load the "handles" data? I don't use that functionality, but that's my understanding of how it works
  3 Comments
Eric Keller
Eric Keller on 19 Dec 2011
I see I'm wrong from the code sample. I always just debug/set a setpoint and see what the handles are. You are dereferencing the handles structure incorrectly somehow, only your debugger knows for sure. It will become obvious when you do this.
Walter Roberson
Walter Roberson on 19 Dec 2011
I can tell from the code that Steven is using GUIDE; GUIDE callbacks automatically pass the handles structure in.

Sign in to comment.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!