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 en Java Discussion :

Probleme de focus je crois ?


Sujet :

Interfaces Graphiques en Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 142
    Par défaut Probleme de focus je crois ?
    Bonjour a tous,

    Comme le dis mon titre, je ne suis pas sure de mon probleme. J'ai un JPanel qui contient un JSVGCanvas (de batik). Jusqu'a maintenant tout marchait bien mais j'ai voulu ajouter un ecouteur sur le clavier (avec la souris et la molette, ca fonctionne nickel). J'ai ajouté le Key listener sur le Jpanel et sur le JSVGCanvas et mes appuis clavier ne fonctionnent que si ma souris se trouve dans le JSVGCanvas
    J'en ai donc deduit que peut etre c'était un probleme de focus et que celui ci n'était que sur le JSVGCanvas mais ce que je ne comprend pas c'est que pour mes clics souris (qui fonctionnent sensiblement de la même manière) ca marche que je sois sur le JSVGCanvas ou sur le JPanel seul.
    Si quelqu'un voit dans quelle direction je dois chercher pour trouver une solution.....

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 142
    Par défaut
    Bon, ca faisait un moment que je cherchais sans trouver alors j'ai posté ma question et voila que je trouve la solution!!!
    Par contre, je ne comprends pas pourquoi ca marche....
    J'ai remplace mon implement KeyListener par
    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
     
    addKeyListener(new KeyAdapter()
    {
         public void keyTyped(KeyEvent e)
         {
         }
         public void keyPressed(KeyEvent e)
         {
    	ControlClavier(e);
         }
         public void keyReleased(KeyEvent e)
         {
         }
    }
    );
    dans ma fonction d'initialisation et la , ca marche bien sur le JPanel comme sur leJSVGCanvas.
    Si quelqu'un sait pourquoi, je veux bien une explication.
    Je n'aime pas quand ca marche et que je ne sais pas pourquoi...

  3. #3
    Membre Expert
    Avatar de X-plode
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2005
    Messages
    682
    Détails du profil
    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 682
    Par défaut
    Desole, de n'avoir pas vu ton post plus tot car j'avais la solution.
    Moi aussi j'ai cherche pas mal de temps et en fait c'est un lien fais directement sur ton objet.
    Le focus est en fait le composant actif.
    Ainsi si tu n'as pas de lien par un composant actif ton interaction ne pourra etre decele par ton systeme comprends tu ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 142
    Par défaut
    Bonjour,
    j'ai bien compris le probleme mais je ne comprends pas pourquoi le fait de faire addKeyListener(new KeyAdapter) dans ma fonction d'initialisation au lieu de implement KeyListener sur mon Japplet resoud le probleme.
    Pour moi, ces deux methodes étaient identiques dans leurs fonctionnement.
    Apparemment, il doit y avoir une différence...

  5. #5
    Membre Expert
    Avatar de X-plode
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2005
    Messages
    682
    Détails du profil
    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2005
    Messages : 682
    Par défaut
    En fait implementer dans ton JApplet fais un appel mais ton objet reste inactif. Alors que si tu lui donne le focus soit comme un relais lors d'une course a pied ainsi l'objet peut interagir avec l'interface.
    Comprends tu ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 142
    Par défaut
    non, je ne comprends pas bien.
    Je croyais avoir resolu le pb mais il arrive encore parfois (moins souvent qu'avant) que ca ne marche plus et en recliquant sur ma fenetre à des endroits différents, ca se remet à marcher.
    Comment est ce que je peux forcer le focus sur ma JApplet????

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

Discussions similaires

  1. Bouton moche sous IE, probleme de Focus
    Par nicottin dans le forum Mise en page CSS
    Réponses: 12
    Dernier message: 30/08/2007, 14h43
  2. probleme avec focus sous ie du flash
    Par éloi_75 dans le forum Flash
    Réponses: 15
    Dernier message: 22/02/2007, 23h27
  3. Surment un probleme de focus ?
    Par quentingsc dans le forum VB 6 et antérieur
    Réponses: 20
    Dernier message: 04/02/2007, 18h34
  4. [Action Script] Probleme de Detph (je crois)
    Par Neroptik dans le forum Flash
    Réponses: 2
    Dernier message: 14/11/2006, 03h55
  5. [C#] Probleme de focus
    Par kenzo080 dans le forum ASP.NET
    Réponses: 7
    Dernier message: 27/01/2006, 15h58

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