帮忙给一个java菜单栏例子的源代码给你个小例子,已经添加注释了 。自己运行下看看效果,满意的话记得结贴子!
import java.awt.BorderLayout;
import java.awt.CheckboxMenuItem;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class TestMenu extends Frame implements ActionListener{
TextArea ta;//文本区
MenuBar mb;//MenuBar 类封装绑定到框架的菜单栏的
Menu mnFile,mnEdit,mnFormat,mnHelp;//从菜单栏部署的下拉式菜单组件
MenuItem miNew,miOpen,miSave,miSaveAs,miExit,miFont;//菜单中的所有项必须属于类 MenuItem 或其子类之一
CheckboxMenuItem miBinary;//一个可包括在菜单中的复选框
public TestMenu(){
super("记事本");//调用父类构造方法
ta = new TextArea("",20,20);//新建文本区 , 第一个参数是默认文本,第二个参数是行数,第三个是列数
/*
* BorderLayout边框布局
* 添加文本区到Frame,BorderLayout.CENTER是居中位置
* */
add(ta,BorderLayout.CENTER);
mb = new MenuBar();//创建菜单栏对象
/*
* 创建菜单,指定菜单名
* */
mnFile= new Menu("文件");
mnEdit= new Menu("编辑");
mnFormat= new Menu("格式");
mnHelp= new Menu("帮助");
/*
* 创建子菜单,并指定名称
* */
miNew= new MenuItem("新建");
miOpen= new MenuItem("打开");
miSave= new MenuItem("保存");
miSaveAs= new MenuItem("另存为");
miExit= new MenuItem("退出");
miExit.addActionListener(this);//为退出菜单添加监听
/*
* 添加上面创建的子菜单到文件菜单下
* */
mnFile.add(miNew);
mnFile.add(miOpen);
mnFile.add(miSave);
mnFile.add(miSaveAs);
mnFile.addSeparator();//将一个分隔线或连字符添加到菜单的当前位置
mnFile.add(miExit);
miBinary= new CheckboxMenuItem("二进制");//创建在复选框的子菜单
miFont= new MenuItem("字体");//创建子菜单
/*
* 添加miBinary、miFont两个子菜单到mnFormat(格式)下
* */
mnFormat.add(miBinary);
mnFormat.add(miFont);
/*
* 将文件、编辑、格式、帮助添加到菜单栏
* */
mb.add(mnFile);
mb.add(mnEdit);
mb.add(mnFormat);
mb.add(mnHelp);
setMenuBar(mb);//添加菜单栏到Frame
/*
* 关闭窗口时 , 关闭运行成语
* */
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
public static void main(String args[]){
TestMenu tm=new TestMenu();
tm.setSize(300,200);//设置窗体的宽、高
tm.setLocation(300,100);//将组件移到新位置Component类方法
tm.setVisible(true);//设置显示窗体,true为显示 , false为隐藏
}
/**
* 监听事件 , 实现ActionListener接口的actionPerformed方法
*/
public void actionPerformed(ActionEvent e){
String s = e.getActionCommand();//获取选中菜单的名称
System.out.println(s);
if(s.equals("退出")){
System.exit(0);//停止运行程序
}
}
}
java swing 菜单打开与关闭子窗口如果实现了你第一个问题,后面的就都不存在了 。
锁住了主窗体,那么关闭操作 , 菜单点击都不可能操作了 。
下边按问题一个一个解答,这是不考虑关联性的,如果考虑关联性 。后两个不可能与1同时存在 。
1.这个使用Dialog而不是FrameDialog有model属性,setModel(true);这样就是模态对话框,后面的都不可以操作了 。
2.窗体关闭时,使用System.exit(0);这样,所有的就都关闭了 。
3.打开一个新的,关闭已打开的,需要有前一个窗体的对象句柄 。用可以设置成非显示 。
java设计一个创建二级菜单的程序 。100分,100分,100分, 重要的事情说三遍..~
我来1个参考案例
效果图
参考代码
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
// 本来继承自JFrame .实现ActionListener接口
public class TextFrame extends JFrame implements ActionListener {
private final JTextArea jta;
boolean isBold, isItalic;
public TextFrame() {
jta = new JTextArea();
jta.setLineWrap(true); // 自动换行
Font font = new Font(Font.DIALOG, Font.PLAIN, 26);
jta.setFont(font);
JScrollPane jsp = new JScrollPane(jta);// 会自动生成滚动条的面板
add(jsp);
//菜单栏的创建和设置
JMenuBar menuBar = new JMenuBar();
JMenu menuFile = new JMenu("File");
JMenuItem jmia01 = new JMenuItem("About");
jmia01.addActionListener(this);
JMenuItem jmia02 = new JMenuItem("Exit");
jmia02.addActionListener(this);
menuFile.add(jmia01);
menuFile.add(jmia02);
JMenu menuFormat = new JMenu("Format");
JMenu menuColor = new JMenu("Color");
JMenuItem jmib01 = new JMenuItem("Blue");
jmib01.addActionListener(this);
JMenuItem jmib02 = new JMenuItem("Red");
jmib02.addActionListener(this);
JMenuItem jmib03 = new JMenuItem("Yellow");
jmib03.addActionListener(this);
menuColor.add(jmib01);
menuColor.add(jmib02);
menuColor.add(jmib03);
JMenu menuFont = new JMenu("Font");
JMenuItem jmic01 = new JMenuItem("Bold");
jmic01.addActionListener(this);
JMenuItem jmic02 = new JMenuItem("Italic");
jmic02.addActionListener(this);
menuFont.add(jmic01);
menuFont.add(jmic02);
menuFormat.add(menuColor);
menuFormat.add(menuFont);
menuBar.add(menuFile);
menuBar.add(menuFormat);
setJMenuBar(menuBar);//设置菜单栏
setTitle("文本编辑窗口"); // 设置标题
setSize(520, 350);//设置窗口大小
setLocationRelativeTo(null);//设置窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//设置窗口点击关闭按钮时,退出
}
@Override
public void actionPerformed(ActionEvent e) {
String cmd = e.getActionCommand();// 获取ActionCommand ,用于判断是哪一个按钮被点击了
if (cmd.equals("Exit")) {
System.exit(0);
} else if (cmd.equals("About")) {
JOptionPane.showMessageDialog(this, "程序版本Ver1.0", "About", JOptionPane.INFORMATION_MESSAGE);
} else if (cmd.equals("Blue")) {
jta.setForeground(Color.BLUE);
} else if (cmd.equals("Red")) {
jta.setForeground(Color.RED);
} else if (cmd.equals("Yellow")) {
jta.setForeground(Color.YELLOW);
} else if (cmd.equals("Bold")) { // 第一次选择Bold 会加粗,第二次选择Bold会取消加粗
isBold = !isBold;
if (isBold) {
jta.setFont(new Font(Font.DIALOG, Font.BOLD, 26));
} else {
jta.setFont(new Font(Font.DIALOG, Font.PLAIN, 26));
}
} else if (cmd.equals("Italic")) {
isItalic = !isItalic;
if (isItalic) {
jta.setFont(new Font(Font.DIALOG, Font.ITALIC, 26));
} else {
jta.setFont(new Font(Font.DIALOG, Font.PLAIN, 26));
}
}
}
public static void main(String[] args) {
new TextFrame().setVisible(true);// 创建窗口设置可见
}
}
用JAVA编程一个菜单命令和一个按钮都能实现窗口的关闭import java.awt.*;
import java.awt.event.*;
public class Test extends Frame
{
public static void main(String[] args)
{
new Test();
}
public Test()
{
this.setSize(800,600);
this.addWindowListener(new WindowAdapter()//添加窗体关闭事件
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
MenuBar mb = new MenuBar();
Menu m = new Menu("文件");
MenuItem mi = new MenuItem("退出");
mi.addActionListener(new ActionListener()//为选项添加关闭事件
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
m.add(mi);
mb.add(m);
this.setMenuBar(mb);//为窗口设置菜单条java子菜单关闭代码;
this.setVisible(true);
}
}
java关闭当前窗口代码方法一:
类 JFrame
javax.swing.JFrame
JFrame中的方法void setDefaultCloseOperation(int)可以设置
以下为改方法的用法:
setDefaultCloseOperation
public void setDefaultCloseOperation(int operation)设置用户在此窗体上发起
"close" 时默认执行的操作 。必须指定以下选项之一:
DO_NOTHING_ON_CLOSE(在 WindowConstants 中定义):不执行任何操作;要求程序在已注册的
WindowListener 对象的 windowClosing 方法中处理该操作 。
HIDE_ON_CLOSE(在 WindowConstants 中定义):调用任意已注册的 WindowListener
对象后自动隐藏该窗体 。
DISPOSE_ON_CLOSE(在 WindowConstants 中定义):调用任意已注册 WindowListener
的对象后自动隐藏并释放该窗体 。
EXIT_ON_CLOSE(在 JFrame 中定义):使用 System exit
方法退出应用程序 。仅在应用程序中使用 。
默认情况下 , 该值被设置为 HIDE_ON_CLOSE 。更改此属性的值将导致激发属性更改事件,其属性名称为
"defaultCloseOperation" 。
注:当 Java 虚拟机 (VM) 中最后一个可显示窗口被释放后,虚拟机可能会终止
要实现你说的,应该采用
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
方法二:
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class Test extends JFrame {
public Test(){
this.setTitle("title");
this.setSize(300,200);
this.setLocation(100,100);
//设置关闭时什么也不做
this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
//监听关闭按钮的点击操作
this.addWindowListener(new WindowAdapter(){
//new 一个WindowAdapter 类 重写windowClosing方法
//WindowAdapter是个适配器类具体看jdk的帮助文档
public void windowClosing(WindowEvent e) {
//这里写对话框
if(JOptionPane.showConfirmDialog(null,
"退出","提
示",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE)==JOptionPane.YES_OPTION){
System.exit(0);
}
}
});
this.setVisible(true);
}
public static void main(String[] args) {
new Test();
}
}
【java子菜单关闭代码 java菜单项弹出新窗口】关于java子菜单关闭代码和java菜单项弹出新窗口的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 直播集合软件开发,网站直播软件开发
- 内存卡怎么放进硬盘里,内存卡怎么装进电脑
- 主播在火车上能直播犯法吗,在火车上直播违法吗
- linux继续输入命令 linux输入命令后没反应
- 怎么把电脑快速传到手机,怎么把电脑快速传到手机上面
- steam动作游戏,Steam动作游戏大作国产
- phpcms9.6.3总是被挂马,iis被挂马
- php有数据库有结构 php中数据库怎么设计
- 手机怎么登录仙域,仙域手机怎么玩