public class MousePopupListener extends MouseAdapter {
private JComponent owner;
public MousePopupListener(JComponent owner) {
this.owner = owner;
}
public void mousePressed(MouseEvent e) {
checkPopup(e);
}
public void mouseClicked(MouseEvent e) {
checkPopup(e);
}
public void mouseReleased(MouseEvent e) {
checkPopup(e);
}
void checkPopup(MouseEvent e) {
if (e.isPopupTrigger()) {
JPopupMenu popup = new JPopupMenu();
// populate the popup menu with your menu items
popup.show(this.owner, e.getX(), e.getY());
}
}
}
Now, call myButton.addMouseListener(new MousePopupListener(myButton))
public class MousePopupListener extends MouseAdapter {
private JComponent owner;
public MousePopupListener(JComponent owner) {
this.owner = owner;
}
public void mousePressed(MouseEvent e) {
checkPopup(e);
}
public void mouseClicked(MouseEvent e) {
checkPopup(e);
}
public void mouseReleased(MouseEvent e) {
checkPopup(e);
}
void checkPopup(MouseEvent e) {
if (e.isPopupTrigger()) {
iif(e.getButton()==MouseEvent.BUTTON1){
JPopupMenu popup1 = new JPopupMenu();
popup1.show(this.owner, e.getX(), e.getY());
//left mouse click on the button
}
else if(e.getButton()==MouseEvent.BUTTON3){
JPopupMenu popup2=new JPopupMenu();
popup2.show(this.owner, e.getX(), e.getY());
//right mouse click on the button
}
}
}
}