在JDK1.4以前,我们只有一种方式来去掉窗口的标题栏,那就是直接使用JWindow,用JWindow来代替JFrame使用。但用过JWindow的人一定知道,JWindow在操作系统的任务栏是不可见的,这样我们就无法在几个视窗之间来切换到这个窗口了。
使用JWindow也是很多人知道的一种去掉标题栏的方式。但从Java1.4开始,有一种新的方式可以使用,我们来看看。
现在我们创建一个类并继承于JFrame:
package gditc.wedige;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JRootPane;
public class JFrameDemo extends JFrame {
public JFrameDemo() {
this.getContentPane().add(new JLabel("Just a test."));
this.setUndecorated(true); // 去掉窗口的装饰
this.getRootPane().setWindowDecorationStyle(JRootPane.NONE);// 采用指定的窗口装饰风格
this.setSize(300, 150);
}
public static void main(String[] args) {
JFrame frame = new JFrameDemo();
frame.setVisible(true);
}
}
请看加了注释的两行,要去掉标题栏,关键代码就是这两行,第1行去掉窗口的装饰,第2行为窗口指定头饰风格。在这里,可以通过调用this.getRootPane().setWindowDecorationStyle()方法为窗口指定以下的装饰风格:
setExtendedState(JFrame.MAXIMIZED_BOTH);//界面显示最大化
setUndecorated(true); // 去掉窗口的装饰,删除标题栏
getRootPane().setWindowDecorationStyle(JRootPane.NONE);//采用指定的窗口装饰风格
getRootPane().setWindowDecorationStyle()方法为窗口指定以下的装饰风格:
1. NONE 无装饰(即去掉标题栏)
2.FRAME 普通窗口风格
3.PLAIN_DIALOG 简单对话框风格
4.INFORMATION_DIALOG 信息对话框风格
5.ERROR_DIALOG 错误对话框风格
6.COLOR_CHOOSER_DIALOG 拾色器对话框风格
7.FILE_CHOOSER_DIALOG 文件选择对话框风格
8.QUESTION_DIALOG 问题对话框风格
9.WARNING_DIALOG 警告对话框风格
setMinimumSize(new Dimension(500,400));//设置窗口最小的界面
setMaximumSize(new Dimension(500,400));//设置窗口最大的界面
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);//设置关闭按钮事件
setIconImage(Toolkit.getDefaultToolkit().createImage("pic.jpg"));//设置标题栏上左上角的图标
JFrameDemo.java:
package gditc.wedige;
import java.awt.Dimension;
import java.awt.Toolkit;
import javax.swing.JFrame;
import javax.swing.JRootPane;
public class JFrameDemo {
public static void main(String[] args) {
JFrame frame = new JFrame("JFrame Demo");
// frame.setUndecorated(true); // 去掉窗口的装饰,删除标题栏
frame.getRootPane().setWindowDecorationStyle(JRootPane.NONE);// 采用指定的窗口装饰风格
/*
* frame.getRootPane().setWindowDecorationStyle();// 方法为窗口指定以下的装饰风格:
* NONE 无装饰(即去掉标题栏) FRAME 普通窗口风格 PLAIN_DIALOG 简单对话框风格 INFORMATION_DIALOG
* 信息对话框风格 ERROR_DIALOG 错误对话框风格 COLOR_CHOOSER_DIALOG 拾色器对话框风格
* FILE_CHOOSER_DIALOG 文件选择对话框风格 QUESTION_DIALOG 问题对话框风格 WARNING_DIALOG
* 警告对话框风格
*/
// frame.setExtendedState(JFrame.MAXIMIZED_BOTH);// 界面显示最大化
// frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);// 设置关闭按钮事件
// frame.setMinimumSize(new Dimension(500, 400));// 设置窗口最小的界面
// frame.setMaximumSize(new Dimension(500, 400));// 设置窗口最大的界面
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setIconImage(Toolkit.getDefaultToolkit().createImage("pic.jpg"));// 设置标题栏上左上角的图标
frame.setVisible(true);
frame.setBounds(200, 200, 400, 100);
}
}