`

使用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实现,部分菜单功能实现

    【标题】"我做的一个记事本,swing实现,部分菜单功能实现" 指的是一个基于Java Swing库开发的简单文本编辑器。Swing是Java的一个图形用户界面(GUI)工具包,它允许开发者创建丰富的桌面应用程序。在这个项目中,...

    JAVA SWING可折叠菜单

    在Swing中,可折叠菜单是一种提高用户界面交互性的功能,它允许用户隐藏或显示菜单项,以减少屏幕上的视觉混乱并使界面更加简洁。本文将深入探讨如何在Java Swing中实现可折叠菜单。 首先,让我们了解菜单的基础...

    swing鼠标右键功能实现

    在Swing中实现鼠标右键功能,主要是通过`MouseListener`监听鼠标事件,特别是`mouseClicked`事件中的右键单击行为。同时,需要使用`JPopupMenu`来创建弹出式菜单,显示用户定义的菜单项。以下是根据提供的代码和描述...

    Swing实现的功能

    在Swing中,开发者可以创建出丰富的、可高度定制的窗口应用,包括菜单、按钮、文本框、滚动条等各种组件。Swing完全由纯Java编写,因此具有跨平台性,可以在任何支持Java的系统上运行。 在Swing中实现企业级桌面...

    swing写的可折叠的功能菜单

    本项目涉及的是一个使用Swing实现的可折叠功能菜单。这种菜单允许用户通过展开或折叠节点来管理和浏览一系列操作,提高了界面的用户体验和交互性。下面将详细介绍这个项目中的关键知识点。 1. **Swing组件**: ...

    基于Swing技术实现“HoneyViewer”图片查看器

    HoneyViewer图片查看器是一个基于java Swing实现的图片查看器,主要实现了图片展示功能。 本实验手册根据需求完成图片读取、切换等功能,平台的全称为:基于java Swing实现的HoneyViewer图片查看器(后简称为: Keep-...

    swing实现计算器功能

    本教程将深入探讨如何使用Swing来实现一个简单的计算器应用。首先,我们从标题和描述中可以得知,这是一个基于Swing的计算器项目,包含了源码(Calc.java)和编译后的类文件(Calc.class),以及一个HTML帮助文件...

    JAVA Swing实现记事本

    总之,这个“JAVA Swing实现记事本”的项目涵盖了Swing组件的使用,文件操作,以及基本文本编辑功能的实现。通过学习和实践这个项目,开发者可以深入理解Java桌面应用开发,并增强对GUI编程的理解。同时,这也为更...

    Swing 弹出式菜单用法

    在 NetBeans 中使用菜单控件非常方便,开发者可以使用 NetBeans 的图形化界面来设计菜单控件,并使用 Java 代码来实现菜单控件的功能。 JCheckBoxMenuItem 与 JRadioButtonMenuItem JCheckBoxMenuItem 和 ...

    使用java的AWT或者swing来做任务栏菜单

    本篇将详细探讨如何使用Java的AWT和Swing来实现任务栏菜单的功能,这在很多桌面应用中是非常常见的需求。 首先,AWT是Java早期提供的GUI库,提供了基本的窗口组件,如按钮、文本框等。而Swing是在AWT基础上构建的,...

    Swing实现编辑器(支持语法高亮)

    总的来说,使用Swing实现一个支持语法高亮的编辑器是一项挑战性的任务,需要深入理解GUI编程、文本处理和解析技术。但通过精心设计和适当利用已有资源,可以创建出功能强大、用户友好的代码编辑器。

    原创:swing中根据xml实现对菜单的操作

    本项目结合了Swing和XML,实现了动态更新菜单的功能,特别是针对不同用户展示个性化的菜单结构,而且支持无限级子菜单的创建。下面我们将详细探讨这一技术实现的关键知识点。 1. **Swing组件与菜单系统** Swing...

    用swing实现的mediaplayer

    在这个"用Swing实现的mediaplayer"项目中,我们将深入探讨如何使用Swing来创建一个媒体播放器。 首先,Swing中的JFrame是所有窗口应用的基础,它是顶级容器,用于承载其他组件。在mediaplayer项目中,JFrame将作为...

    java swing 菜单按钮

    本教程将深入讲解Java Swing中的菜单按钮及其使用方法,非常适合初学者。 一、JMenuBar与JMenu 在Swing中,菜单通常由`JMenuBar`和`JMenu`组成。`JMenuBar`是位于窗口顶部的一行菜单,而`JMenu`则是`JMenuBar`下的...

    菜单及Swing组件

    在Swing中,我们可以使用`JPopupMenu`类来实现。创建弹出式菜单通常包括创建`JPopupMenu`实例,添加` JMenuItem`,然后在需要触发的地方绑定该菜单。例如,可以将弹出式菜单添加到`JComponent`上,通过`...

    Java Swing实现一个记事本

    在"Java Swing实现一个记事本"这个项目中,我们主要关注的是如何使用Swing来创建一个功能完备的文本编辑器,类似于Windows中的记事本。下面将详细介绍涉及的关键技术和知识点。 1. **JFrame**: JFrame是Java Swing...

    Swing 实现的界面框架

    这个“Swing 实现的界面框架”显然是基于Swing库构建的一个自定义框架,它允许开发者根据需求进行扩展,摆脱对特定库如 Twaver 的依赖。 Swing 提供了许多基本组件,如按钮(JButton)、文本框(JTextField)、标签...

    用swing实现的QQ界面

    这个项目“用Swing实现的QQ界面”展示了如何利用JDK 6.0中的Swing组件来模仿腾讯QQ的用户界面,从而提供类似的功能。下面将详细讨论Swing、Java GUI设计以及在实现QQ界面过程中可能涉及的关键技术。 Swing是Java的...

    基于Swing和AWT实现的仿windows记事本

    本文将深入探讨如何使用Swing和AWT来实现一个仿Windows记事本的应用程序,以及该程序中包含的主要功能和设计特点。 首先,Swing是Java Foundation Classes(JFC)的一部分,它提供了丰富的组件库,可以创建美观、...

Global site tag (gtag.js) - Google Analytics