使用Swing实现菜单功能

package Assis;

import java.awt.Dimension;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.*;

public class MenuDemo extends JFrame {
	private static final long serialVersionUID = 1L;

	public MenuDemo(String strTitle) {
		// 设置框架窗体标题
		super(strTitle);

		// 创建菜单条并加入到框架窗体中
		JMenuBar mnuMenuBar = new JMenuBar();
		this.setJMenuBar(mnuMenuBar);

		// 创建File菜单和相应的菜单项
		JMenu mnuFile = new JMenu("文件(F)");
		JMenuItem mnuFileNew = new JMenuItem("新建");
		JMenuItem mnuFileOpen = new JMenuItem("打开…");
		JMenuItem mnuFileSave = new JMenuItem("保存");
		JMenuItem mnuFileSaveAs = new JMenuItem("另存为…");
		JMenuItem mnuFilePageSetting = new JMenuItem("页面设置…");
		JMenuItem mnuFilePrint = new JMenuItem("打印");
		JMenuItem mnuFileQuit = new JMenuItem("退出");
		// 为菜单项添加图标
		mnuFileNew.setIcon(new ImageIcon("new.gif"));
		mnuFileOpen.setIcon(new ImageIcon("open.gif"));
		mnuFileSave.setIcon(new ImageIcon("save.gif"));
		mnuFilePrint.setIcon(new ImageIcon("print.gif"));
		// 把菜单项加入到File菜单中
		mnuFile.add(mnuFileNew);
		mnuFile.add(mnuFileSave);
		mnuFile.add(mnuFileSaveAs);
		mnuFile.addSeparator();// 添加分割条
		mnuFile.add(mnuFilePageSetting);
		mnuFile.add(mnuFilePrint);
		mnuFile.add(mnuFileQuit);

		// 创建Edit菜单和相关菜单项并加入到Edit菜单中
		JMenu mnuEdit = new JMenu("编辑(E)");
		mnuEdit.add(new JMenuItem("剪切"));
		mnuEdit.add(new JMenuItem("复制"));
		mnuEdit.add(new JMenuItem("粘贴"));

		// 创建Search菜单和相关菜单项并加入到Search菜单中
		JMenu mnuSearch = new JMenu("搜索(S)");
		mnuSearch.add(new JMenuItem("查找..."));
		mnuSearch.add(new JMenuItem("查找下一个"));
		mnuSearch.add(new JMenuItem("替换..."));

		// 创建Help菜单和相关菜单项并加入到Help菜单中
		JMenu mnuHelp = new JMenu("帮助(H)");
		mnuHelp.add(new JMenuItem("关于帮助"));
		mnuHelp.add(new JMenuItem("帮助主题"));

		// 给顶层菜单加上助记符
		mnuFile.setMnemonic('F');
		mnuEdit.setMnemonic('E');
		mnuSearch.setMnemonic('S');
		mnuHelp.setMnemonic('H');
		// 把所有菜单加入到菜单条中
		mnuMenuBar.add(mnuFile);
		mnuMenuBar.add(mnuEdit);
		mnuMenuBar.add(mnuSearch);
		mnuMenuBar.add(mnuHelp);

	}

	// 设置框架窗体的大小为宽400,高为400
	public Dimension getPreferredSize() {
		return new Dimension(400, 400);
	}

	// 程序的入口方法
	public static void main(String[] args) {
		// 创建框架窗体
		MenuDemo frmMenuDemo = new MenuDemo("这是个使用Swing菜单的例子");

		// 设置框架窗体的事件监听(关闭窗体事件)
		frmMenuDemo.addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e) {
				System.exit(0);
			}
		});

		// 显示框架窗体
		frmMenuDemo.pack();
		frmMenuDemo.setVisible(true);

	}
}

 

你可能感兴趣的:(框架,swing,F#)