Se puo' essere utile, posto questa stupida estensione di JPopUpMenu che collega lo stesso popup a piu' componenti della GUI. Mancano alcune funzionalita' perche'... Perche' finora non mi sono servite!!!![]()
![]()
![]()
La sintassi e' semplice, basta fornire come paramentro aggiuntivo al costruttore, l'elenco dei componenti.
codice:/* * DeKPopupMenu.java * * Created on 27 marzo 2005, 23.20 */ import java.awt.Component; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JPopupMenu; /** * * @author DeK */ public class DeKPopupMenu extends JPopupMenu { Component[] contesto; public DeKPopupMenu(Component... c) { this(null, c); } public DeKPopupMenu(String s, Component... c) { super(s); contesto = c; } public void activate() { for (Component c: contesto) c.addMouseListener(new PopupListener()); } // Listener aggiunto al componente designato per attivare il popup // Fonte: <http://java.sun.com/docs/books/tutor...ents/menu.html> class PopupListener extends MouseAdapter { public void mouseReleased(MouseEvent e) { check(e); } public void mousePressed(MouseEvent e) { check(e); } private void check(MouseEvent e) { if (e.isPopupTrigger()) show(e.getComponent(), e.getX(), e.getY()); } } }

Rispondi quotando

