package Awt;
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class Pupo extends JFrame {
public Pupo() {
this.setSize(500, 600);//父窗口大小
this.setLocationRelativeTo(null);//居中显示
JPanel jPanel = new JPanel();
JPopupMenu jPopupMenu = new JPopupMenu();//创建jpopimenu对象
JMenuItem jMenuItem = new JMenuItem("a");
JMenuItem jMenuItem2 = new JMenuItem("b");
JMenuItem jMenuItem3 = new JMenuItem("exit退出");
jPopupMenu.add(jMenuItem);//往弹出式窗口里添加选项
jPopupMenu.add(jMenuItem2);
jPopupMenu.add(jMenuItem3);
jPanel.add(jPopupMenu);
jPanel.addMouseListener(new MouseAdapter() {//监听组件是否有鼠标事件发生
@Override
public void mouseClicked(MouseEvent e) {
int x = e.getX();//拿到当前用户点击的x点
int y = e.getY();
if (e.getButton() == e.BUTTON3) {//如果用户点击的鼠标右键
jPopupMenu.show(jPanel, x, y);//弹出窗口
}
}
});
jMenuItem3.addActionListener(new ActionListener() {//给exit退出选项加监听器
@Override
public void actionPerformed(ActionEvent e) {//如果用户点击了exit退出
System.exit(0);//程序结束
}
});
this.add(jPanel);
jPanel.setVisible(true);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setVisible(true);
}
public static void main(String[] args) {
Pupo pupo = new Pupo();
}
}
java.Swing.JPopuMenu(弹出式窗口) 保姆级别注释
本文详细介绍了如何在Java中使用Awt库创建一个具有右键菜单功能的JFrame窗口,包括JPanel、JPopupMenu和MouseListener的运用,以及如何处理ACTION_PERFORMED事件以实现退出功能。
摘要由CSDN通过智能技术生成