Je travaille sur un éditeur de carte pour mon projet de collège. Et j'ai eu un problème que le panneau de carte n'écoute pas l'événement principal pendant qu'il devrait. Cela se produit lorsque j'ajoute un ToolBarPane (qui étend JPanel) avec JComponent tel que JButton, JComboBox qui implémente ActionListener sur lui et le panneau de carte (qui étend le JPanel) ensemble sur le cadre (j'ai utilisé BorderLayout). J'ai une instruction System.out.println pour tester si la touche est pressée, et elle n'imprime pas, si je supprime la barre d'outils, l'écouteur de touches fonctionne à nouveau, de même le mouseListenner est désactivé comme le keyListener, ce qui signifie que je peux ' t gérer les événements de presse etc, mais le mouseListener fonctionne bien et je peux toujours gérer l'événement de déplacement de la souris.JPanel n'écoute pas d'événement clé quand il y a un composant enfant avec JButton dessus
Voici une capture d'écran comment cela fonctionne sans ToolBarPane
http://img684.imageshack.us/img684/3232/sampleku.png
Notez que vous pouvez utiliser la souris pour mettre des images sur la carte, vous pouvez également sélectionner des images en utilisant la souris comme un laser outil, et en appuyant sur la touche numérique, vous pouvez basculer entre les différentes images, cela fonctionne bien jusqu'à ce que j'ajoute la ToolBarPane qui montre comme ceci:
img291.imageshack.us/img291/8020/failve.png (s'il vous plaît ajouter http avant cela, je peux seulement poster un lien hypertexte)
(je ne peux pas poster des images ici parce que je suis un nouvel utilisateur)
Avec le ToolBarPane sur je ne parvenais plus à gérer l'événement clé.
Je suppose que cela pourrait être par le fait que l'accent a été transféré à ce panneau en quelque sorte, mais pas sûr du tout.
Le corps et le corps le savent-ils et peuvent-ils m'aider?
Merci beaucoup