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 :

Problème avec setMnemonic


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 296
    Par défaut Problème avec setMnemonic
    Bonjour

    J'ai un problème avec mon raccourci (touche "page suivante"), celui ci ne marche pas et je ne voit pas pourquoi 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
     
    private JButton getJButtonsuivant() {
    		if (jButtonsuivant == null) {
    			jButtonsuivant = new JButton();
    			jButtonsuivant.setText("Suivant");
    			jButtonsuivant.setMnemonic(KeyEvent.VK_PAGE_DOWN);
    			jButtonsuivant.setPreferredSize(new Dimension(92, 26));
    			jButtonsuivant.addActionListener(new java.awt.event.ActionListener() {
    				public void actionPerformed(java.awt.event.ActionEvent e) {
    					System.out.println("ca marche");
    					compteur++;
    					getJxTable();
     
     
    				}
    			});
    		}
    Merci pour vos solutions

  2. #2
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Le mnemonic indique la touche qui forme un raccourcis clavier lorsqu'elle est associée avec la touche Alt.
    Ainsi le raccourci clavier de ton button est "Alt + VK_PAGE_DOWN" et non simplement "VK_PAGE_DOWN".
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 296
    Par défaut
    Et c'est défini comme ca ? il n' y a pas moyen de n'avoir que "VK_PAGE_DOWN"
    au lieu de "alt+VK_PAGE_DOWN" ?

  4. #4
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Sinon ça devient simplement un KeyListener() sur ta touche clavier

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 296
    Par défaut
    Le problème c'est qu'à chaque fois que je vais taper une touche
    je vais rentrer dans le keylistener et il faudra que je détecte si c'est la
    "bonne" touche, ca risque d'alourdir le programme non?

  6. #6
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Un simple listener pour détecter l'appuie d'une touche n'influera pas les performances de ton application.

    Sinon tu peux aussi utiliser une Action associée à un KeyStroke.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    jButtonsuivant.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_PAGE_DOWN, 0), "page_down");
    jButtonsuivant.getActionMap().put("page_down", new AbstractAction() {
        private static final long serialVersionUID = 11L;
        public void actionPerformed(ActionEvent evt) {
            System.out.println("ca marche");                    
            compteur++;                    
            getJxTable();
        }
    });
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  7. #7
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Citation Envoyé par sandytarit
    Le problème c'est qu'à chaque fois que je vais taper une touche, je vais rentrer dans le keylistener et il faudra que je détecte si c'est la "bonne" touche
    Là je suis d'accord mais si tu n'associes ta touche à aucune autre donc faire un raccourci alors tu es forcé de passer par un KeyListener() et de faire évidemment la vériifcation à chaque touche pressée.

    S'il existe une autre solution, je ne la connais pas

    Ensuite, est ce que ça va alourdir ton programme ? Honnêtement je ne sais pas si le fait de vérifier si c'est la bonne touche ralentisse tant le programme.

    edit : grilled par la rapidité et l'ingéniosité du yam's

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

Discussions similaires

  1. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  2. Problème avec [b]struct[/b]
    Par Bouziane Abderraouf dans le forum CORBA
    Réponses: 2
    Dernier message: 17/07/2002, 10h25
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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