正 文

Java学习之第一个图形界面


www.7dspace.com  更新日期:2006-1-28 8:07:20  七度空间


上面提到了关于修改布局管理器的问题,Frame的默认布局管理器是边界布局管理器,如果要将它转化成FlowLayout或者 GridLayout甚至null的布局管理方式应该如何处理呢?java给我们提供了修改的方法,假设创建的Frame对象为f,那么将其修改成 FlowLayout的方法就是f.setLayout(new FlowLayout()),而如果修改成null,则只需要写成f.setLayout(null)即可。

有了以上的知识,我们就可以开始进行我们的图形创作了,

首先要添加一个MenuBar,也就是菜单项,虽然Frame是默认BorderLayout的,但是也没有必要将MenuBar放置在最上面,因为MenuBar默认就是一定要放在最上方的,即使是再添加一个置于NORTH的部件,也是位于MenuBar下方的。

中间我们留出的主要部分是画图用的,需要较大的空间,所以放置在CENTER部位。

下方的部件比较多,也比较复杂。选择图形类型的部件叫做Choice,单选框和复选框都叫做Checkbox,不同的地方是,对于单选框而言,要添加一个叫CheckboxGroup的部件将单选框圈在其范围内,这样我们就可以完成单选的功能了。于是,需要放在最下方的部件有3个之多,那么,如果都使用BorderLayout.SOUTH的话,几个部件将叠加在一起,我们就只能够看见最上方的部件,这样的结果显然不是我们希望的。那么怎么处理这个问题呢?我们知道Panel的默认布局管理器是FlowLayout的,那么如果我们将一个Panel加在Frame的最南端,然后依次加入Choice 和Checkbox单选框和复选框,那么问题就可以解决。

现在,让我们来着手做我们自己的图形界面吧!

首先要引入java.awt.*,这个包是基本的图形包,如Frame,Panel都在这个包中。引用方法为:import java.awt.*;

接下来你可以创建一个叫做Drawing的类,让它继承原包中有的Frame类,在Drawing类中,可以添加自己想要的功能以完善这个Frame,继承用extends来操纵,如下:

public class Drawing extends Frame

{

       Drawing(String ss)

       {

              setTitle(ss); //设置标题

              setVisible( true );

       }

       public static void main(String args[])

              {

                     Drawing d = new Drawing("Paint Program");

              }

}

在main函数中创建了一个Drawing的对象,命名为d,并传递这个Frame的标题名,类Drawing中的Drawing(String ss)表示对Drawing重新构造了一遍,Drawing(String ss)称为过载,ss接受main函数传递过来的字符串。如果不使用过载方式也可以完成,程序如下修改即可:

public class Drawing extends Frame

{

       Drawing()

       {

              setTitle("Paint Program");

              setVisible( true );

       }

       public static void main(String args[])

              {

                     Drawing d = new Drawing();

              }

}

5页,页码:[1] [2] [3] [4] [5] 

上一篇:用Java日志包进行调试
下一篇:Java 1.5 中新的静态导入特性
标题:Java学习之第一个图形界面 作者:yjwgeg 来源:开发者在线
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐