Cita:
Iniciado por jkintero
Código:
tbProducto.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent e) {
System.out.println("Click derecho");
if(e.isPopupTrigger()){
System.out.println("menu");
paquete.popupMenu(e);
}
}
});
Hola jkintero!! XD
A ver si te puedo ayudar. Primero yo quitaría esos mensajes:
System.out.println("Click derecho");
System.out.println("menu");
(supongo que los habías puesto para seguir las trazas del programa)
Luego, si quieres que sea el botón derecho y no otro, deberías de preguntar por
e.getButton() == java.awt.event.MouseEvent.BUTTON3 para ver si es este botón; lo de
e.isPopUpTrigger() si he visto ejemplos en los que se ponía esto... pero no sé el por qué... lo veo innecesario... yo lo quitaría.
Lo de
paquete.popupMenu(e); no sé a que viene... supongo que
paquete será un elemento JPopupMenu... pues si es así deberías de hacer
paquete.show() en las coordenadas adecuadas y hacerlo visible
paquete.setVisible(true).
En definitiva :
Cita: tbProducto.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent e) {
if( e.getButton() == java.awt.event.MouseEvent.BUTTON3 )
{
paquete.show(e.getComponent(), e.getX(), e.getY());
//esto le dice donde se tiene que mostrar
paquete.setVisible(true);
}
}
});
P.D: También puede ser interesante que al hacer click derecho algunas acciones se muestren inhibidas y no se permitan hacer... esto se consigue con setEnable(boolean) en un elemento JMenuItem del JPopupmenu...
Espero haberte sido de ayuda. Saludos!!!