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 :

WindowButtonMotionFcn et objet de classe "axes"


Sujet :

Interfaces Graphiques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2012
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Décembre 2012
    Messages : 97
    Par défaut WindowButtonMotionFcn et objet de classe "axes"
    Bonjour,

    J'essaye d'intégrer deux curseurs capables de renseigner sur les positions X et Y d'une courbe dans un graphe lui même imbriqué dans une interface. Le "module" dédié spécialement à la création des curseurs et à leur utilisation fonctionne correctement si utilisé tout seul dans son coin sur une courbe tracée à la va vite mais je me heurte au problème suivant lorsque j'essaye d'intégrer mes curseurs dans ma gui.

    Ma fonction clickFcn en appelle à la propriété WindowButtonMotionFcn mais cette dernière n'est pas supportée pour un objet de classe axes. Existe t-il un moyen de contourner le problème ?

    Merci d'avance.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    function clickFcn(obj,event)
     
        fig = get(obj,'parent');
     
        handles = guidata(fig);
     
        set(fig,'WindowButtonMotionFcn',{@dragFcn,obj},...
            'WindowButtonUpFcn',@unclickFcn);
    end
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Error using hg.axes/set
    The name 'WindowButtonMotionFcn' is not an accessible property for an
    instance of class 'axes'.
     
    Error in mygui>clickFcn (line 432)
    set(fig,'WindowButtonMotionFcn',{@dragFcn,obj},...

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

    Contrairement au nom que tu lui donnes, d'après le message d'erreur, ce n'est pas un objet de type Figure qui est retourné par
    get(obj,'parent'); mais un objet Axes.
    Il faut dont prendre le parent du parent. Ou plus directement avec la fonction ancestor :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fig = ancestor(obj, 'figure');

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2012
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Décembre 2012
    Messages : 97
    Par défaut
    Bonjour Jerome,

    Merci beaucoup pour ton aide !

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

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