Callback Problem
Mostra commenti meno recenti
Hi everyone! I built a simple GUI with GUIDE and edited Callback function. The program is very simple: you can choose from popup-menù if copy A to B or B to A. The first time, it works correctly, (i.e A to B or B to A), but if you want to use it again, there is an error, but I don't know why. This is a short part of the program (if you want, i can send you .m and .figure files, my e-mail is pietropp11@gmail.com):
[...]
function edit1_Callback(hObject, eventdata, handles)
val = str2double(get(hObject, 'String'));
if isnan(val)
set(hObject, 'String', 0);
errordlg('Devi inserire un numero','Errore');
end
handles.edit1 = val;
guidata(hObject,handles)
[...]
function edit2_Callback(hObject, eventdata, handles)
val = str2double(get(hObject, 'String'));
if isnan(val)
set(hObject, 'String', 0);
errordlg('Devi inserire un numero','Errore');
end
handles.edit2 = val;
guidata(hObject,handles)
[...]
function pulsante_Callback(hObject, eventdata, handles)
popup = get(handles.popupmenu1, 'Value');
switch popup
case 1
cambio= handles.edit1;
set(handles.edit2, 'String', num2str(cambio));
case 2
cambio= handles.edit2;
set(handles.edit1, 'String', num2str(cambio));
end
[...]
I'm sorry if my English in not very well. Best Regards
Pietro Rossi
Risposta accettata
Più risposte (1)
Jarrod Rivituso
il 17 Apr 2011
It is strange for me to see code such as
handles.edit1 = val;
in your callback, considering that val is a number you determined seemingly based on user input.
GUIDE starts you off with a handles structure that contains "handles" to each of the uicontrol objects in your GUI. These handles are just unique numbers that are used to identify which uicontrol you are referring to.
When you change the values of these, then the number can no longer be used as an identifier to the uicontrol.
1 Commento
Pietro Rossi
il 19 Apr 2011
Categorie
Scopri di più su Interactive Control and Callbacks in Centro assistenza e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!