Java GUI设计第5篇:对窗口进行设置

在本篇中,我们将对窗口的一些基本属性进行设置。

1.对标题的设置

在我们平时所使用的窗口程序中,通常在标题栏中都会有标题,标题一般在窗口的左上方显示。

JFrame中,有一个方法可以设置标题,那就是setTitle()。

以下的程序,可以给我们的窗口设置一个标题。假如我们要设置的标题为"Java",那么我们只要以下的程序即可。

package teach5;

import javax.swing.JFrame;

public class F1 extends JFrame {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	public F1() {
		this.setTitle("Java");//给窗口设置标题
		//也可以用super("Java");
		this.setSize(400, 300);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	public static void main(String[] args) {
		F1 f=new F1();
		f.setVisible(true);
	}
}

效果:

Java GUI设计第5篇:对窗口进行设置

这样就给窗口设置了标题。

2.设置窗口能否改变大小

这里所谓的能否改变大小,指的就是能否通过拉动窗口的边框改变大小。

比如,windows7系统自带的计算器就是一个例子,它不能通过拉动窗口的边框改变大小。如图:

Java GUI设计第5篇:对窗口进行设置

可以看到,窗口右上方中间的最大化按扭是灰色的,并且将鼠标放到窗口边框时,鼠标指针不会变成双向箭头。这样,也就意味着不能改变大小。但不是真的不能改变大小,将计算器设置为其他类型的时候就可以改变大小。

在Java中如何设置呢?

package teach5;

import javax.swing.JFrame;

public class F1 extends JFrame {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	public F1() {
		this.setTitle("Java");//给窗口设置标题
		//也可以用super("Java");
		this.setResizable(false);//将窗口设置为不可改变大小
		this.setSize(400, 300);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	public static void main(String[] args) {
		F1 f=new F1();
		f.setVisible(true);
	}
}

效果:

Java GUI设计第5篇:对窗口进行设置

可以看到最大的按扭变灰了。

3.设置是否总是在最上方

窗口总是在最上方,就是当其他的窗口放置到这个窗口上方时,会被这个窗口覆盖,从而使这个窗口总是在屏幕的最上方。我们也可以设置:

package teach5;

import javax.swing.JFrame;

public class F1 extends JFrame {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	public F1() {
		this.setTitle("Java");//给窗口设置标题
		//也可以用super("Java");
		this.setResizable(false);//将窗口设置为不可改变大小
		this.setAlwaysOnTop(true);//设置窗口总是在最上方
		this.setSize(400, 300);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	public static void main(String[] args) {
		F1 f=new F1();
		f.setVisible(true);
	}
}

效果:

Java GUI设计第5篇:对窗口进行设置

 

将计算器拖到Java上,Java这个窗口仍然在上方。

4.设置有无标题栏

在我们使用的一些软件中,有的程序的标题栏是和系统程序的不一样的,比如酷我音乐。

Java GUI设计第5篇:对窗口进行设置

这样的窗口是没有标题栏的,这里的标题栏就是自己创建的一些按扭。这样的设计通常是为了让窗口美观,去掉了系统的标题栏。

设置为没有标题栏,也很简单,只要一个语句即可:

package teach5;

import javax.swing.JFrame;

public class F2 extends JFrame {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	public F2() {
		this.setSize(400, 300);
		this.setLocationRelativeTo(null);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setUndecorated(true);
	}
	public static void main(String[] args) {
		F2 f=new F2();
		f.setVisible(true);
	}
}

效果:

Java GUI设计第5篇:对窗口进行设置

这样就实现了没有标题栏。

有的人就会问:怎么移动窗口呢?怎么关闭呢?这就需要涉及到响应用户事件了。现在我们可以使用结束进程的方法来关闭,或者是在任务栏中点击鼠标右键,再点击“关闭窗口”。