重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

java子菜单关闭代码,java窗口关闭代码

java关闭当前窗口代码

方法一:

我们提供的服务有:网站制作、成都网站建设、微信公众号开发、网站优化、网站认证、磐石ssl等。为千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的磐石网站制作公司

类 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 swing 菜单打开与关闭子窗口

如果实现了你第一个问题,后面的就都不存在了。

锁住了主窗体,那么关闭操作,菜单点击都不可能操作了。

下边按问题一个一个解答,这是不考虑关联性的,如果考虑关联性。后两个不可能与1同时存在。

1. 这个使用Dialog而不是Frame Dialog有model属性,setModel(true); 这样就是模态对话框,后面的都不可以操作了。

2.窗体关闭时,使用System.exit(0); 这样,所有的就都关闭了。

3.打开一个新的,关闭已打开的,需要有前一个窗体的对象句柄。用可以设置成非显示。

帮忙给一个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 Application,为用户提供三种关闭窗口的方法

******************************************************************

新建类CloseFrame.java,代码如下:

******************************************************************

import java.awt.BorderLayout;

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JMenu;

import javax.swing.JMenuBar;

import javax.swing.JMenuItem;

import javax.swing.JPanel;

public class CloseFrame extends JFrame implements ActionListener {

JMenuBar menu;

JMenu file;

JMenuItem closeMenu;

public CloseFrame() {

menu = new JMenuBar();

file = new JMenu("文件");

closeMenu = new JMenuItem("关闭");

closeMenu.addActionListener(this);

JButton closeButton = new JButton(" 关闭 ");

closeButton.addActionListener(this);

JPanel closePanel = new JPanel();

closePanel.setLayout(new FlowLayout());

closePanel.add(closeButton);

this.add(closePanel, BorderLayout.CENTER);

this.add(menu, BorderLayout.NORTH);

menu.add(file);

file.add(closeMenu);

this.setBounds(200, 100, 200, 120);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public void actionPerformed(ActionEvent e) {

System.exit(0);

}

public static void main(String[] args) {

new CloseFrame();

}

}

******************************************************************

运行结果如下:

******************************************************************


分享标题:java子菜单关闭代码,java窗口关闭代码
链接地址:http://cqcxhl.com/article/hocegj.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP