编写一个 JFrame 窗口,窗口包含一个菜单栏和一个 JLabel 标签。 菜单栏中有两个菜单,第一个菜单有两个菜单项,它们之间用分隔符分开,第二个菜单有一个菜单项。

编写一个 JFrame 窗口,要求如下: 

    1.窗口包含一个菜单栏和一个 JLabel 标签。 
    2. 菜单栏中有两个菜单,第一个菜单有两个菜单项,它们之间用分隔符分开,第二个菜单有一个菜单项。 
    3.JLabel 标签放置在窗口的中间(即 BorderLayout.CENTER),当点击菜单项的时候,菜单项中的文本显示的 JLabel 标签中。


import java.awt.BorderLayout;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;
public class Test extends JFrame {
	public Test() {
		JMenuBar menubar = new JMenuBar();
		this.setJMenuBar(menubar);
		JMenu menu = new JMenu("菜单1");
		JMenu menu1 = new JMenu("菜单2");
		menubar.add(menu);
		menubar.add(menu1);
		JMenuItem item1 = new JMenuItem("选项一");
		JMenuItem item2 = new JMenuItem("选项二");
		JMenuItem item3 = new JMenuItem("选项三");
		menu.add(item1);
		menu.addSeparator();
		menu.add(item2);
		menu1.add(item3);
		
		final JLabel label = new JLabel();
		item1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				label.setText("item1");
			}
		});
		item2.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				label.setText("item2");
			}
		});
		item3.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				label.setText("item3");
			}
		});
		
		this.add(label,BorderLayout.CENTER);

		this.setDefaultCloseOperation(Frame.CROSSHAIR_CURSOR);
		this.setSize(600,600);
		this.setVisible(true);
	}
	

	public static void main(String[] aa) {
		new Test();
	}
}


 

你可能感兴趣的:(Java)