⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 swing13_14.java

📁 很有用的课件
💻 JAVA
字号:
/**
 * ClassName: Swing13_14.class
 * Description: 菜单
 * Copyright:    Copyright (c) 2002
 * Company: 中国青年出版社
 * @author: Hong Yi
 * @version 1.0
 */

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;

class MyFrame extends JFrame
   implements ActionListener
{
	public MyFrame()
    {
	    setTitle("Swing示例程序14");
	    setSize(300, 200);
	    setLocation(100,100);
        addWindowListener(new WindowAdapter()
        {
			public void windowClosing(WindowEvent e)
            {  System.exit(0);
            }
         });

         myPanel = new MyPanel();
         getContentPane().add(myPanel, "Center");

		 //新建一个菜单栏
		 JMenuBar menuBar = new JMenuBar();
		 setJMenuBar(menuBar);
		 //新建一个菜单对象
		 JMenu fileMenu = new JMenu("File");
		 //添加一个菜单项
		 fileMenu.add(new JMenuItem("New"));
		 //添加一个子菜单
		 JMenu openMenu = new JMenu("Open");
		 openMenu.add(new JMenuItem("TxtFile"));
		 openMenu.add(new JMenuItem("DocFile"));

		 JMenuItem javaFileItem = new JMenuItem("JavaFile");
		 openMenu.add(javaFileItem);
		 javaFileItem.addActionListener(this);

		 fileMenu.add(openMenu);
		 menuBar.add(fileMenu);

		 //新建一个菜单
		 JMenu findMenu = new JMenu("Find");
		 //设置助记符
		 findMenu.setMnemonic('F');
		 //新建7个不同的菜单项
		 findMenu.add(new JMenuItem());
		 ImageIcon icon = new ImageIcon("images/middle.gif");
		 findMenu.add(new JMenuItem(icon));
		 findMenu.add(new JMenuItem("File"));
		 findMenu.add(new JMenuItem("Directory", icon));

		 JMenuItem pcItem = new JMenuItem("PC", 'P');
		 pcItem.addActionListener(this);
		 findMenu.add(pcItem);
		 //新建一个分隔线
		 findMenu.addSeparator();
		 JMenuItem gp = new JMenuItem("Group");
		 //为group菜单项增加快捷键
		 gp.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_G, InputEvent.CTRL_MASK));
		 gp.addActionListener(this);
		 findMenu.add(gp);
		 menuBar.add(findMenu);
	 }

		public void actionPerformed(ActionEvent evt)
		{
			if (evt.getSource() instanceof JMenuItem)
				//判断事件源是否为菜单项
			{
				String itemName = evt.getActionCommand();
				if (itemName.equals("JavaFile"))
				{
					myPanel.setMsg("You've pressed menu : JavaFile");
				}
				else if (itemName.equals("PC"))
				{
					myPanel.setMsg("You've pressed menu : PC");
				}
				else if (itemName.equals("Group"))
				{
					myPanel.setMsg("You've pressed menu : Group");
				}
			}
		}

		private MyPanel myPanel;
}

class MyPanel extends JPanel
{
	public MyPanel()
	{
		szShowMsg = "";
	}

	public void setMsg(String szMsg)
	{
		szShowMsg = szMsg;
		repaint();
	}

	//绘制信息
	public void paintComponent(Graphics g)
    {
 	    super.paintComponent(g);
		g.drawString(szShowMsg, 20, 20);
   }

   private String szShowMsg;

}

public class Swing13_14
{
	public static void main(String[] args)
    {
		JFrame frame = new MyFrame();
        frame.setVisible(true);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -