首先举一个简单的例子,简单说明一下如何进行图形界面编程,下面是一个简单的窗口程序
例1:
package _SUNXIN; import java.awt.Frame; public class blog { public static void main(String[] args) { Frame f = new Frame("简单的窗口程序1"); f.setSize(600, 400); f.setLocation(100, 100); f.show(); } }
输出结果为:
通过结果我们可以看到,这个简单的窗口程序仅仅是改变了这个窗口的标题,下面分析代码,第一行是建了一个包,名字叫_SUNXIN,这点不需要多说,同样,五、六、七及十二、十三行也不用多说。
第三行是使用了awt中的Frame,因为我们下面使用了这个类库中的工具Frame。Awt(AWT),即Abstract Window Toolkit,抽象窗口工具包,SUN公司提供的用于图形界面编程(GUI)的类库。看第八行,使用Frame建立了一个窗口程序并赋予这个窗口的名字为“简单的窗口程序1”,如果我们在建立这个窗口时不向Frame()的括号中添加字符串,即把第八行代码改为:Frame f = new Frame(); 那么上面结果中窗口上的文字会消失。第九行,是新建的窗口f调用Frame中的方法,其作用是改变窗口的大小,你可以改变括号中的数值(可以是两个0,但不能不写)。第十行是改变窗口出现的位置,如果你去掉该句,编译器会默认的让窗口出现在界面的左上角(同上,可以是两个0,但不能不写),注意,这里的100指的是像素。
第十一行是显示窗口,如果没有它,你运行上面的程序,结果不会有任何显示
注:需要说明的是,此时你若想关闭这个程序,点击右上方的 X 是不行的,具体怎么让窗口点击 X 就关闭,下面我们再说。
现在对这个例子进行扩充,如果想改变窗口的背景颜色,可以在例1的程序的第八行下面、第十一行上面添加如次代码:f.setBackground(Color.blue);
需要注意的是,此时使用了color库,所以要在类的上面加上这句:import java.awt.Color;
这样,上面的代码才能正常使用,结果如下:
下面,给这个窗口添加按钮,需要在例1程序的第八行下面、第十一行上面添加这样的代码:Button bt = new Button("按钮");
当然,你创建时Button这个词会报错,因为你用到Button你就要使用相应的库,所以,为了简单,可以直接把上面的import那儿的语句改为:import java.awt.*;
这样就是可以使用任意属于awt的库了。然而,当你做了如上所述的改动时,会发现运行后的结果根本看不到按钮,这是因为,你虽然创建了一个按钮,但是没有添加到窗口上,所以看不到,你需要在建立按钮的语句下面,显示窗口的上面添加如此的代码:f.add(bt);
则输出结果为:
package _SUNXIN; import java.awt.*; public class blog { public static void main(String[] args) { Frame f = new Frame("简单的窗口程序1"); f.setSize(600, 400); f.setLocation(100, 100); f.setBackground(Color.blue); Button bt1 = new Button("中"); Button bt2 = new Button("东"); Button bt3 = new Button("南"); Button bt4 = new Button("西"); Button bt5 = new Button("北"); f.add(bt1, "Center"); //17行 f.add(bt2, "East"); f.add(bt3, "South"); f.add(bt4, "West"); f.add(bt5, "North"); //21行 f.show(); } }
运行结果为:
从第17到第21行,那是分别将按钮放到窗口的东、南、西、北以及中央
如果在第8行下边放一个这个语句——f.setLayout(new BorderLayout(10,10));
那么,结果就会变成成这样:
可以看出,添加的那个语句的用处是使按钮间产生间隙,那两个数字分别控制按钮上下和左右间的宽窄程度
最后说一下如何添加代码使得一点击窗口右上方的X ,窗口就会关闭,方法有多种,这里先简单说一种。
首先来说,关闭按钮需要添加一个事件,所以先在包(如果有)名的下边添加如下代码:
import java.awt.event.*;
之后,可以直接在 Frame f = new Frame("简单的窗口程序1");
这句代码下任意一处(但必须在main方法内)添加如下代码:
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
这样当你点击X时,就可以关闭窗口程序了。
当然,关闭窗口的方法不止这一个,这里仅这么举一个例子
【所有代码均在windows系统下eclipse环境JDK 1.7下运行通过】
(如有错误,敬请指正)