菜单引发一个事件,该事件的处理者为该窗口
时间: 2024-03-14 20:46:59 浏览: 59
好的,这里是一个菜单引发事件并且该事件的处理者为窗口的示例:
```java
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class MyFrame extends JFrame implements ActionListener {
public MyFrame() {
// 设置窗口标题
setTitle("My Frame");
// 设置窗口大小
setSize(400, 300);
// 将窗口置于屏幕中央
setLocationRelativeTo(null);
// 设置窗口关闭时的操作
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建菜单栏
JMenuBar menuBar = new JMenuBar();
// 创建菜单
JMenu menu = new JMenu("File");
// 创建菜单项
JMenuItem menuItem = new JMenuItem("Exit");
// 添加菜单项的事件监听器
menuItem.addActionListener(this);
// 将菜单项添加到菜单中
menu.add(menuItem);
// 将菜单添加到菜单栏中
menuBar.add(menu);
// 将菜单栏添加到窗口中
setJMenuBar(menuBar);
// 显示窗口
setVisible(true);
}
public static void main(String[] args) {
MyFrame frame = new MyFrame();
}
// 实现 ActionListener 接口中的 actionPerformed 方法
public void actionPerformed(ActionEvent e) {
// 处理菜单项点击事件
if (e.getActionCommand().equals("Exit")) {
dispose(); // 关闭窗口
}
}
}
```
在这个示例中,我们创建了一个菜单栏,其中包含一个名为 "File" 的菜单,该菜单中包含一个名为 "Exit" 的菜单项。我们通过调用 `addActionListener` 方法,将 `MyFrame` 类本身作为事件监听器添加到 "Exit" 菜单项上。当用户点击 "Exit" 菜单项时,`actionPerformed` 方法中的代码会被调用,我们在这里实现了关闭窗口的功能。
阅读全文