Jag har problem med en popupmeny. Jag vill inte att den skall kunna hamna utanför skärmen. Därför jag gör en kontroll och ändrar på koordinaterna om det behövs innan jag placerar ut min popupmeny.
Problem är att det inte funkar första gången. Vid första klicket efter det att programmet har startat så kan menyn hamna utanför skärmen. Men efter första klicket funkar det som jag har tänkt mig... Vad kan vara fel?
jList1.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
if (SwingUtilities.isRightMouseButton(me)){
int x=me.getX();
int y=me.getY();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension menuSize = popupMenu.getSize();
if((int)screenSize.getWidth() < (x+menuSize.getWidth()+frame.getX()))
x=(int)(x-menuSize.getWidth());
if((int)screenSize.getHeight() < (y+menuSize.getHeight()+frame.getY()+80))
y=(int)(y-menuSize.getHeight());
popupMenu.show(jList1, x, y);
}
}
});