Passage des variables entre 2 GUI
J'ai 2 gui edit1.fig et edit2.fig. Je veux passer la valeur stoque en edit d'edit1.fig quand j'appuye pushbutton dans l'edit qui se trouve dans la deuxieme interface graphique edit2.fig.
J'ai utilise les fonctions setappdata pour prelever la valeur d'ou je veux et getappdata pour l'utiliser ou je veux.
Dans le callback du pushbutton1 du fichier edit1.fig j'ai mis ca:
Code:
1 2 3 4
|
contor=100; %initialisation du variable
set(handles.edit1,'String',100); % stoquer en edit la valeur 100
setappdata(100,'contor',contor) %prelever la valeur d'edit1 du fichier edit1.fig |
Dans le callback edit du fichier edit2.fig j'ai mis ca:
Code:
1 2
|
contor=getappdata(100,'contor'); %utiliser en edit1 du fichier edit2.fig et stoquer la valeur 100 |
Je veux savoir si cette application avec 2 gui vous marche. Chez moi il ne marche plus. :cry:
J'ai fais comme tu m'as dit mais ca ne marche:(
Ok. J'ai modifie comme tu as dit mais ca ne fonctionne pas.
J'ai lis aussi de l'objet root sur ta documentation du lien.
Quoi je dois faire mettre invisible l'objet edit de la deuxieme forme:(?
J'ai attache ici ma archive avec les 2 fichiers fig: (pour etre plus concret):
Quand je presse le button d'edit1.fig il me stoque la valeur 100 et quand je fais le lien avec Edit2.fig la valeur 100 n'est pas stoque dans la deuxieme interface grafique Edit2.fig.
J'ai ouvert l'interface graphique Edit1.fig et Edit2.fig. Si j'utilise gcf? (seulement edit1.fig sera ouverte dans ce cas).
Merci d'avance!
http://www.flyupload.com/?fid=259893044
Attribuer une valeur d'un edit de forme 1 dans un edit de la forme 2
J'ai attache ici le codes sources des mes deux formes:
Edit1.fig contient:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%contor=100; %initialisation de variable globale contor avec 100 dans l'edit1
%contor1=200;
set(handles.edit1,'string',100); %mettre en edit1 la valeur 100
set(handles.edit2,'string',200); %mettre en edit1 la valeur 100
setappdata(0,'contor',contor); %prelever la valeur 100 de la premiere forme pour l'utiliser dans la deuxieme avec
%getappdata fonction
function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
Edit2 %liason avec la deuxieme forme |
Edit2.fig la deuxieme forme contient:
Code:
1 2 3 4 5 6 7 8
| function edit1_Callback(hObject, eventdata, handles)
% hObject handle to edit1 (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 edit1 as text
% str2double(get(hObject,'String')) returns contents of edit1 as a double
contor=getappdata(0,'contor'); |
Mais quand j'appuie le bouton pushbutton1 de la premiere forme Edit1.fig et apres je fais le lien avec la deuxieme forme dans l'edit de la deuxieme forme n'est pas stoque la valeur 100 :cry:( dans la premiere forme est stoque cette valeur pas de probleme). Dans l'edit2.fig c'est la probleme:cry: mai j'utilisais getappdata pour me preluer la valeur 100 stoque dans la premiere forme.
Comment faut-il faire ?