22.3.2 创建框架的其他工作
创建一个空框架后,接下来就是给框架设定一个标题。设置标题使用方法:
public void setTitle(String title);
这是个设置器,通常有了设置器,一定会有访问器。
public String getTitle();
如果框架没有设置框架标题,就返回一个空的字符串。
在很多应用程序中,窗口都是位于屏幕中央,而上例中,所得到的框架位于左上角,那么如何来定位框架呢?
在Java中规定屏幕的左上角顶点为原点,水平为x轴,垂直为y轴,所以屏幕左上角的坐标就是(0,0)。如果屏幕的分辨率是1024×768像素,那么右下角的坐标就是(1024,768),而默认的框架从左上角开始。使用方法如下。
public void setLocation(int x, int y);
那么如何将框架放到屏幕中间呢?现在教读者一个方法:先通过函数获得屏幕的高度和宽度。
int width=screenSize.width;
int height=screenSize.height;
然后再计算框架左上角的坐标。
int x=(width-WIDTH)/2;
int y=(height-HEIGHT)/2;
那么如何能得到屏幕的“screenSize”方法呢?这就要使用ToolKit类中的“getScreenSize()”方法。
ToolKit kit=Toolkit.getDefaultToolkit();
Dimension screenSize=kit.getScreenSize();
这样就将框架定位到中心位置了。
【实例22.2】下面通过实例演示上面的理论知识。
01 import javax.swing.JFrame;
02 import java.awt.*;
03 ///创建一个顶层框架类
04 ///WIDTH参数是指框架的宽度
05 ///HEIGHT参数是指框架的长度
06 ///setTitle用来设置框架左上角的标题
07 ///setSize用来设置框架的大小
08 ///通过ToolKit类中的方法,将顶层框架放置到屏幕中央
09 public class Swingtest1
10 {
11 static final int WIDTH=300;
12 static final int HEIGHT=200;
13 public static void main(String[]args)
14 {
15 JFrame jf=new JFrame();
16 jf.setSize(WIDTH, HEIGHT);
17 jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
18 jf.setTitle("学生管理系统");
19 Toolkit kit=Toolkit.getDefaultToolkit();
20 Dimension screenSize=kit.getScreenSize();
21 int width=screenSize.width;
22 int height=screenSize.height;
23 int x=(width-WIDTH)/2;
24 int y=(height-HEIGHT)/2;
25 jf.setLocation(x, y);
26 jf.show();
27 }
28 }
【代码说明】第11~12行设置了两个高度和宽度的常量。第25行代码非常关键,是将窗口居中的意思。第16行设置窗口的大小。第26行显示窗口。
【运行效果】运行结果如图22.2所示。
图 22.2 一个居中在屏幕中央的框架
在使用应用软件时,希望能改变框架的大小,这里学习如何对框架进行缩放。
public void setResizable(boolean resizable)
如果不允许用户缩放框架大小,只需将resizable设置为false,如果一个框架不知道是否可以缩放,可以使用下列的方法看看是否可以缩放。
boolean isResizable()
如果返回true,则允许用户改变框架的大小,反之,则不允许改变。