popmenu en un canvas
Hola:
Quisiera crear un popmenu al pinchar sobre un canvas, para ello se que tengo que poner el popmenu sobre un jlabel o un jpanel, la cuesti贸n es que no se me muestra. Os dejo el c贸digo por si me podeis ayudar. Gracias
public void canvasfiguras_mousePressed(MouseEvent e) {
if(!SwingUtilities.isLeftMouseButton(e))
{
JLabel labelpopMenu = new JLabel();
if( e.getY() > 0 ){
popupMenu(panelpopMenu,(int)(e.getX()),(int)(e.getY()));
}
}
}
protected void popupMenu(JLabel labelpopMenu,int x, int y){
jp.setLightWeightPopupEnabled(true);
labelpopMenu.add(jp);
labelpopMenu.setSize(20,20);
JMenuItem zout = new JMenuItem("Zoom out");
zout.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
}
}
);
JMenuItem zin = new JMenuItem("Zoom in");
zin.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
}
}
);
jp.add(zin);
jp.add(zout);
jp.show(labelpopMenu,x,y);
}
Quisiera crear un popmenu al pinchar sobre un canvas, para ello se que tengo que poner el popmenu sobre un jlabel o un jpanel, la cuesti贸n es que no se me muestra. Os dejo el c贸digo por si me podeis ayudar. Gracias
public void canvasfiguras_mousePressed(MouseEvent e) {
if(!SwingUtilities.isLeftMouseButton(e))
{
JLabel labelpopMenu = new JLabel();
if( e.getY() > 0 ){
popupMenu(panelpopMenu,(int)(e.getX()),(int)(e.getY()));
}
}
}
protected void popupMenu(JLabel labelpopMenu,int x, int y){
jp.setLightWeightPopupEnabled(true);
labelpopMenu.add(jp);
labelpopMenu.setSize(20,20);
JMenuItem zout = new JMenuItem("Zoom out");
zout.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
}
}
);
JMenuItem zin = new JMenuItem("Zoom in");
zin.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
}
}
);
jp.add(zin);
jp.add(zout);
jp.show(labelpopMenu,x,y);
}
