How to use 'Edit Text' efficiently in a GUI?

2 vues (au cours des 30 derniers jours)
Lisa Wu
Lisa Wu le 23 Nov 2012
Commenté : siddharth le 9 Déc 2014
I notices that there are two ways to ues it;
The tag of edit1 is edit1.
Method 1:
function edit1_callback()
num1 = get(hObject,'string');
handles.num1 = num1;
guidatda(gcbo,handles); % why need this command?
function pshbtn1_callback()
y = handles.num1;
guidata(gcbo,handles); % why need it too?
Method 2:
function pshbtn_callback()
y = str2num(get(hObject,handles));
As shown above, what's the difference? And the effect of "guidata(gcbo,handles)" ? Thank you very much!
  2 commentaires
Lisa Wu
Lisa Wu le 23 Nov 2012
The Method 2 should be:
y = str2num(get(handles.edit1,'string'));
siddharth
siddharth le 9 Déc 2014
the second method works just fine. Thanks

Connectez-vous pour commenter.

Réponse acceptée

Arthur
Arthur le 23 Nov 2012
If you use guidata(gcbo,handles), you save the string of your textbox in the 'handles' structure; in your pshbtn_callback you subsequently read this value from handles again. I personally prefer method 2, where you read out the string of the textbox in the button callback. This has a few advantages:
  • you only use the handles structure for what it's supppost to (storing handles)
  • you retrieve the string at the very moment you need it (ensures that you have the string that is actually shown in the textbox)
Method 1 is not wrong though, it will work.
  1 commentaire
Lisa Wu
Lisa Wu le 26 Nov 2012
Thank you very much!

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by