Java6学习笔记26——利用Swing创建子菜单

本文介绍了一个使用 Java Swing 创建菜单栏和子菜单的示例程序。该程序包含一个顶级菜单“文件”和“样式”,其中“样式”菜单下又包含“颜色”的子菜单,所有菜单项均可响应用户的点击事件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import javax.swing.JFrame;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class MenuSubMenu extends JFrame implements ActionListener {
public static void main(String arg[]) {
MenuSubMenu ms = new MenuSubMenu();
}
public MenuSubMenu() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JMenuBar menuBar = buildMenuBar();
setJMenuBar(menuBar);
setLocation(250,150);
setSize(300,200);
setVisible(true);
}
JMenuBar buildMenuBar() {
JMenuBar menuBar = new JMenuBar();

JMenu fileMenu = new JMenu("File");
fileMenu.getPopupMenu().setLightWeightPopupEnabled(false);
menuBar.add(fileMenu);

JMenuItem exitMenuItem = new JMenuItem("Exit");
exitMenuItem.addActionListener(this);
fileMenu.add(exitMenuItem);

JMenu decideMenu = new JMenu("Style");
fileMenu.getPopupMenu().setLightWeightPopupEnabled(false);
menuBar.add(decideMenu);

JMenuItem tallMenuItem = new JMenuItem("Tall");
tallMenuItem.addActionListener(this);
decideMenu.add(tallMenuItem);

JMenuItem wideMenuItem = new JMenuItem("Wide");
wideMenuItem.addActionListener(this);
decideMenu.add(wideMenuItem);

JMenu subMenu = new JMenu("Color");
subMenu.getPopupMenu().setLightWeightPopupEnabled(false);
decideMenu.add(subMenu);

JMenuItem blackMenuItem = new JMenuItem("Black");
blackMenuItem.addActionListener(this);
subMenu.add(blackMenuItem);

JMenuItem whiteMenuItem = new JMenuItem("White");
whiteMenuItem.addActionListener(this);
subMenu.add(whiteMenuItem);

JMenuItem puceMenuItem = new JMenuItem("Puce");
puceMenuItem.addActionListener(this);
subMenu.add(puceMenuItem);

return(menuBar);
}
public void actionPerformed(ActionEvent e) {
String selection = e.getActionCommand();
if(selection.equals("Exit")) {
System.exit(0);
} else if(selection.equals("Black")) {
System.out.println("The color is Black");
} else if(selection.equals("White")) {
System.out.println("The color is White");
} else if(selection.equals("Puce")) {
System.out.println("The color is Puce");
}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值