J'utilise une JMenuBar et JPopupMenu pour construire respectivement une
barre de menu et un menu contextuel, jusque là, tout va bien... Mes menus
son composés de JMenuItem auxquels sont associé les listeners des actions de
mes menus. Mais dans le code de l'action je n'arrive pas à faire la chose
suivante: Comment recupérer le composant sur lequel mon menu contextuel à
été utilisé ou le composant duquel je suis parti pour aller dans mon menu...
Pour faire des actions du style couper/copier/coller j'ai besoin du
composant d'origine et je ne sais pas comment le retrouver.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jc Sirot
Outils1 wrote:
Bonjour,
J'utilise une JMenuBar et JPopupMenu pour construire respectivement une barre de menu et un menu contextuel, jusque là, tout va bien... Mes menus son composés de JMenuItem auxquels sont associé les listeners des actions de mes menus. Mais dans le code de l'action je n'arrive pas à faire la chose suivante: Comment recupérer le composant sur lequel mon menu contextuel à été utilisé ou le composant duquel je suis parti pour aller dans mon menu... Pour faire des actions du style couper/copier/coller j'ai besoin du composant d'origine et je ne sais pas comment le retrouver.
Merci à ceux qui pourront me venir en aide.
Pour le menu contextuel, on peut récupérer le composent sur lequel il a été apellé en appelant la méthode getComponent() de MouseEvent. Pour connaître le composant "duquel je suis parti pour aller dans mon menu" il n'y a pas de méthode simple. Je te conseille de regarder du côté des FocusListener. Par contre pour les composant texte de swing, il existe des actions copy/cut/paste prédéfinie dans les sous classes de JTextComponent (javax.swing.text.TextAction)
--
Cordialement -- JC Sirot
Outils1 wrote:
Bonjour,
J'utilise une JMenuBar et JPopupMenu pour construire respectivement une
barre de menu et un menu contextuel, jusque là, tout va bien... Mes menus
son composés de JMenuItem auxquels sont associé les listeners des actions de
mes menus. Mais dans le code de l'action je n'arrive pas à faire la chose
suivante: Comment recupérer le composant sur lequel mon menu contextuel à
été utilisé ou le composant duquel je suis parti pour aller dans mon menu...
Pour faire des actions du style couper/copier/coller j'ai besoin du
composant d'origine et je ne sais pas comment le retrouver.
Merci à ceux qui pourront me venir en aide.
Pour le menu contextuel, on peut récupérer le composent sur lequel il a
été apellé en appelant la méthode getComponent() de MouseEvent.
Pour connaître le composant "duquel je suis parti pour aller dans mon
menu" il n'y a pas de méthode simple. Je te conseille de regarder du
côté des FocusListener. Par contre pour les composant texte de swing, il
existe des actions copy/cut/paste prédéfinie dans les sous classes de
JTextComponent (javax.swing.text.TextAction)
J'utilise une JMenuBar et JPopupMenu pour construire respectivement une barre de menu et un menu contextuel, jusque là, tout va bien... Mes menus son composés de JMenuItem auxquels sont associé les listeners des actions de mes menus. Mais dans le code de l'action je n'arrive pas à faire la chose suivante: Comment recupérer le composant sur lequel mon menu contextuel à été utilisé ou le composant duquel je suis parti pour aller dans mon menu... Pour faire des actions du style couper/copier/coller j'ai besoin du composant d'origine et je ne sais pas comment le retrouver.
Merci à ceux qui pourront me venir en aide.
Pour le menu contextuel, on peut récupérer le composent sur lequel il a été apellé en appelant la méthode getComponent() de MouseEvent. Pour connaître le composant "duquel je suis parti pour aller dans mon menu" il n'y a pas de méthode simple. Je te conseille de regarder du côté des FocusListener. Par contre pour les composant texte de swing, il existe des actions copy/cut/paste prédéfinie dans les sous classes de JTextComponent (javax.swing.text.TextAction)