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 :

variable d'etat Pushbutton


Sujet :

Interfaces Graphiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2008
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 45
    Par défaut variable d'etat Pushbutton
    Bonjour à tous,
    J'ai deux 'pushbutton' dans mon interface graphique.
    Ce que je souhaiterai faire est que le deuxième pushbutton m'affiche un message d'erreur si le premier pushbutton n'a pas été activé avant.
    Comment faire comprendre à Matlab que l'on a pas cliqué sur le premier pushbutton?
    Merci beaucoup pour vos précieux conseils.

  2. #2
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Une possibilité : tu crées une variable booléenne qui est à false avant d'avoir appuyé sur le pushbutton1 et à true après, puis tu testes cette valeur.
    Pour pouvoir y accéder tu utilises la structure handles.
    Structure (ce n'est pas un exemple) :
    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
    function Figure_OpenFcn(...)
    %....généré automatiquement
    %initialisation dans la OpenFcn
    handles.valeur=false;
    guidata(gcbf,handles);
     
    %callback pushbutton 1
    function PB1_callback(...)
    handles=guidata(gcf);
    handles.valeur=true;
    guidata(gcbf,handles);
     
    %callback pushbutton 2
    function PB2_Callback(...)
    handles=guidata(gcf);
    if ~handles.valeur
       errordlg('Tuuuuuuuuuuuuuuut');
    end
    %suite
    [EDIT] Autre possibilité plus maligne : au départ tu mets ton PB2 à enable=off et dans le callback du PB1 tu mets enable=on,
    comme ça l'utilisateur ne peut appuyer sur PB2 tant que PB1 n'a pas été appuyé.

  3. #3
    Membre averti
    Inscrit en
    Août 2008
    Messages
    45
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 45
    Par défaut
    Merci beaucoup caro. Il y avait juste une petite erreur (surement de frappe). Il fallait mettre dans l'OpeningFcn:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    handles.valeur=false;
    guidata(gcf,handles);
    au lieu de:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    handles.valeur=false;
    guidata(gcbf,handles);
    Voilà c'était juste ça et encore merci.

  4. #4
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Tu es sure que GCBF ne fonctionnait pas ?
    C'est étrange.

    Personnellement je n'utilise jamais GCF et GCBF car il y a trop de risque que cela ne pointe pas vers la bonne figure quand on en a pluseurs.

    Cependant je préfère GCBF (Get Current Callback Figure : handle de la figure parente de l'objet dont c'est le callback) que GCF (Get Current Figure : handle de la figure courante) car c'est plus précis.

    Donc non ce n'était pas une erreur de frappe, c'était intentionnel

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

Discussions similaires

  1. Affecter champs d'un modele à variable d'etats
    Par frazz dans le forum Simulink
    Réponses: 2
    Dernier message: 20/11/2009, 18h38
  2. envoi d'un etat par mail mais avec une variable
    Par franckserpico dans le forum Access
    Réponses: 4
    Dernier message: 28/02/2007, 14h03
  3. Réponses: 1
    Dernier message: 05/01/2007, 15h33
  4. Comment apeler une variable d'un etat pour le VBA
    Par chetflo dans le forum Access
    Réponses: 2
    Dernier message: 26/11/2005, 13h40
  5. Etat basé sur requête à champs variables
    Par hmonnet dans le forum Access
    Réponses: 2
    Dernier message: 10/11/2005, 08h19

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