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

AWT/Swing Java Discussion :

Déterminer objet qui a le focus


Sujet :

AWT/Swing Java

  1. #1
    Membre à l'essai
    Inscrit en
    Décembre 2007
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 27
    Points : 20
    Points
    20
    Par défaut Déterminer objet qui a le focus
    Bonsoir à tous,
    Je cherche un moyen pour obtenir le nom de l'objet qui a le focus dans un JFrame. Y aurait-il dja une fonction ou un bout de code déjà tout fait?
    Un grand merci.

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Il suffit de regarder la doc de JFrame...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre à l'essai
    Inscrit en
    Décembre 2007
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 27
    Points : 20
    Points
    20
    Par défaut
    J'ai essayé cette méthode mais avec un retour de nullpointerException. Qu'est-ce que je n'ai pas fait correctement?
    Merci!!

    jTextField1.requestFocus();
    System.out.println("val="+this.getFocusOwner().toString());
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    D'après la doc, null => aucun composant n'a le focus
    getFocusOwner

    public Component getFocusOwner() Returns the child Component of this Window that has focus if this Window is focused; returns null otherwise.
    Returns:the child Component with focus, or null if this Window is not focusedSee Also:getMostRecentFocusOwner(), isFocused()
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre à l'essai
    Inscrit en
    Décembre 2007
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 27
    Points : 20
    Points
    20
    Par défaut
    Un peu bizarre car le jtextfield semble bien l'avoir le focus... Ce que je ne comprend pas, c'est qu'ils disent que la "window" doit avoir le focus alors qu'en soit, le focus est donné à un enfant du window... Quelles sont les conditions à remplir pour que cela fonctionne?
    Merci

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Après test, je dois bien reconnaître que ça ne marche pas finement
    La solution "standard" d'après quelques recherches et essais consiste à faire un listener et de l'affecter à tous les composants voulus...
    Ça fonctionne, mais c'est lourd...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  7. #7
    Membre à l'essai
    Inscrit en
    Décembre 2007
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 27
    Points : 20
    Points
    20
    Par défaut
    Merci pour ta réponse. C'est ce qu'il me semblait avoir lu aussi mais bon, comme tu dis, fort lourd. Il vaut peut-être mieux dans ce cas-là faire des tests (hasfocus) sur les tous les composants d'un window. Je laisse en attente ce sujet au cas où il existerait une autre solution plus simple.
    Encore merci!!

Discussions similaires

  1. déterminer l'objet qui reçoit le clic
    Par neo79 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 04/10/2010, 22h27
  2. [POO] récupérer l'id d'un objet qui a le focus.
    Par chateau64 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 15/05/2008, 10h43
  3. Récupérer l'objet qui a le focus
    Par Johnbob dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 20/01/2006, 14h40
  4. Déterminer l'application qui a le Focus
    Par JakeGrafton dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 22/02/2004, 12h52
  5. Réponses: 19
    Dernier message: 07/11/2003, 08h10

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