IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Interfaces Graphiques Discussion :

helpdlg pour cases à cocher [Débutant]


Sujet :

Interfaces Graphiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2011
    Messages : 36
    Par défaut helpdlg pour cases à cocher
    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

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Si j'ai bien compris la problématique, il suffit de mettre à 1 repc dès qu'un callback est appelé, et dans ce cas, tu initialises ta variable handles.coord à 0, puis:
    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
    function polaire_checkbox_Callback(hObject, eventdata, handles)
    handles.coord = 1;
    guidata(hObject, handles);
     
    function cartesien_checkbox_Callback(hObject, eventdata, handles)
    handles.coord= 1;
    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;

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2011
    Messages : 36
    Par défaut
    Merci.
    J'avais effectivement oublié d'initialiser handles.coord dans mon OpeningFcn !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. propriété enable pour Case à cocher
    Par Nightwing367 dans le forum IHM
    Réponses: 2
    Dernier message: 28/06/2010, 16h54
  2. [AC-2003] Afficher oui/non en zone de liste pour case à cocher
    Par HE dans le forum IHM
    Réponses: 1
    Dernier message: 12/06/2009, 12h57
  3. associer une valeur pour case à cocher
    Par frans_2000 dans le forum Modélisation
    Réponses: 6
    Dernier message: 12/01/2008, 02h15
  4. Requête pour case à cocher d'une table.
    Par Milyshyn76 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 22/11/2007, 13h06
  5. [SQL] Explode pour cases à cocher
    Par philippef dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/08/2007, 17h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo