Bonjour à tous,

Je travaille sur un interface graphique sous GUI pour lequel j'ai des cases à cocher pour pouvoir ouvrir un autre interface. je veux que si l'opérateur a oublié de cocher sur une case, une boite de dialogue s'ouvre et l'invite à vérifier qu'il a bien coché toutes les cases nécessaires.

J'ai donc pour cela utilisé la fonction helpdlg pour ma boite de dialogue, et pour vérifier si la case a été cochée, dans mon callback de la case cochée, je nomme temp=get(hObject,'Value'), et dans le bouton pour afficher l'autre interface, je mets une condition sur temp, de savoir si elle vaut 1 ou 0.

Mon programme marche bien, si les deux cases sont cochées l'autre interface s'affiche, et si elles ont été décochées la boite de dialogue s'ouvre. Le problème, c'est que la boite de dialogue ne s'ouvre que si la case a été DECOCHEE, et non si elle n'a jamais été cochée.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
function polaire_checkbox_Callback(hObject, eventdata, handles)
pol=get(hObject,'Value'); %returns toggle state of polaire_checkbox
if pol==1
    repc=1;
else repc=0;
end
handles.coord=repc;
guidata(hObject, handles);

function cartesien_checkbox_Callback(hObject, eventdata, handles)
cart=get(hObject,'Value'); %returns toggle state of cartesien_checkbox
if cart==1
    repc=1;
else repc=0;
end
handles.coord=repc;
guidata(hObject, handles);

function affich_surf_pushbutton_Callback(hObject, eventdata, handles)
     coord=handles.coord;
       
if (coord==1) 
     surface(X,Y,Z);   
else
    helpdlg('Entrez la taille du wafer et/ou le type de coordonnées');
end;
Je comprends bien le problème, mais j'aimerais que la boite de dialogue s'affiche si AUCUNE action n'a été faite sur les cases à cocher. Any idea ?
Merci