我是 Java 和 Processing 的初学者。我正在尝试创建一个右键单击弹出菜单,该菜单将显示在处理 jPanel 中。我正在使用的部分代码如下所示,属于扩展 PAplet 的类。最初,当按下鼠标右键时,弹出菜单可以正常显示,但在使用 GUI 的一些其他元素后,它不再出现在屏幕上。
如何解决这个问题?我应该在 steup() 方法中创建弹出菜单吗?还是别处?
谢谢。
private JPopupMenu menu = new JPopupMenu();
private JMenuItem edgeFrom = new JMenuItem("Edge From");
private JMenuItem edgeTo = new JMenuItem("Edge To");
@Override
public void setup() {
size(desiredheight,desiredwidth);
background(255);
PopupActionHandler handler = new PopupActionHandler();
edgeFrom.addActionListener(handler);
edgeTo.addActionListener(handler);
menu.add(edgeFrom);
menu.add(edgeTo);
addMouseListener(new MouseAdapter() {
public void mouseReleased(MouseEvent evt) {
if (evt.isPopupTrigger()) {
menu.show(evt.getComponent(), evt.getX(), evt.getY());
}
}
});
}