swing fonctionne en utilisant les raccourcis clavier. Donc, une seule action est invoquée en fonction de la clé trouvée. Donc vous ne blessez pas le texte collé deux fois.
Une action différente peut être appelée en fonction du composant qui a le focus et de la manière dont l'action a été appelée. Par exemple, si l'accent est mis sur le composant texte, je suppose que l'action Coller par défaut sera utilisée.
Si vous cliquez sur l'élément de menu, l'action que vous avez ajoutée à l'élément de menu est invoquée. Si vous appelez Ctrl + V lorsque le focus n'est pas sur un champ de texte, alors l'action liée à l'élément de menu sera invoquée car les accélérateurs utilisent la fenêtre "in focus" (ou quel que soit son nom) InputMap.
Si vous utilisez les actions par défaut fournies par le EditorKit vous n'aurez pas un problème:
JMenuItem pasteAction = new JMenuItem(new DefaultEditorKit.PasteAction());
pastAction.setAccelerator(...);
vous devez peut-être supprimer l'action Coller de votre carte d'action des composants? –