欢迎来到天天文库
浏览记录
ID:59302989
大小:1.15 MB
页数:9页
时间:2020-09-06
《Java 教案-第12章 GUI初步.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第12章GUI初步12.1介绍(Introduction)为JavaGUI程序设计应用程序接口(API)是面向对象编程最精彩的内容,图形用户界面(GUI)可以通过键盘或鼠标来响应用户的操作。这章首先介绍GUI编程基础,然后用GUI来讲述面向对象编程,特别是要讲框架和组件的关系,包括容器,布局管理器,颜色,字体,边框和图标等。12.2Swing和AWT前面第8章,稍微介绍了一些面向对象编程的GUI例子,显示GUI组件,使用了诸如Jbutton,Jlabel等GUI组件。为什么这些GUI前会有一个J?为什么不用Butt
2、on?事实上,在java.awt包中已经有一个名为Button的类。当Java问世的时候,称AWT(AbstractWindowsToolkit)的GUI类就被绑定在类库中。对于开发简单的图形用户界面,AWT是胜任的,但如果开发综合,复杂的GUI工程却力不从心。另外,AWT是依赖于平台的,即AWT组件的样式与它使用的底层平台相似。新版本中,许多AWT的用户界面组件被一个更鲁棒,灵活,通用的Swing组件代替。Swing组件使用Java代码编写,被直接应用在程序上,而不是调用底层的平台服务。但java.awt.Win
3、dow或java.awt.Panel的子类除外,因为他们必须使用特定平台本地的GUI来绘制。Swing组件很少依赖目标平台,很少使用平台下的本地GUI程序,鉴于此,把它称为轻量级组件,而AWT称为重量级组件。为了和AWT组件进行区分,Swing组件的类命名加前缀J,尽管AWT组件依然被现在版本的Java支持,但最好使用轻量级组件,因为AWT最终会淡出历史舞台,也因此,只介绍Swing组件。12.3JavaGUI与APIGUI的API包含的类可以被分为3类,组件类,容器类,帮助类。它们的层次关系如图所示。组件类,如J
4、button等用来创建用户界面。容器类,如Jframe,Jpanel和Japplet等用来盛载其他组件。帮助类,如Graphics,Color等用来支持GUI组件。注意:Jframe,Japplet,Jdialog和Jcomponent类和它们的子类被组织在Javax.swing包中,其他的类被组织在AWT包中。12.3.1Component类Component的实例可以被显示在屏幕上。Component是所有用户界面类的根类(父类),包含Container类。Jcomponent类是所有轻量级组件的根类。Comp
5、onet和Jcomponent都是抽象类(14章讲解)。现在只需要知道抽象类和类相似,仅仅是不能创建实例就可以了。例如,不可以使用newJComponent()来创建一个Jcomponent对象,但可以使用它非抽象子类的构造方法来创建Jcomponent实例。熟练掌握继承的层次关系非常重要,如下述语句都显示true。12.3.2Container类Container类的实例可以盛载Component的实例,是GUI组件,它用来盛载其他GUI组件的。Window,Panel,Applet,Frame和Dialog都是
6、AWT组件的容器类。为了配合Swing组件,使用Container,Jframe,Jdialog,Japplet和Jpanel类容易,如下图所述。12.3.3帮助类如Graphics,Color,Font,FontMetrics,Dimension和LayoutManager等类是帮助类,它们不是Component的子类。它们用来描述GUI组件的特性,属性,如下图所示。注意:帮助类在AWT包中,Swing组件不能替换所有的AWT,它替换的只有AWT的GUI组件类,因此AWT帮助类仍然在GUI编程中用处很大。12.1
7、Frames框架为了创建用户界面,需要创建一个frame或一个applet(18章介绍)容器来放置用户界面组件。12.4.1创建Frame使用Jframe类来创建一个框架frame,如下所示。使用Jframe创建一个frame窗口,如下程序。框架frame的可见性默认为false,因此必须使用frame.setVisible(true)来显示框架。语句frame.setSize(400,300),设置框架窗口宽400,高300像素,如果不设置大小,则只显示一个标题栏,运行程序后在屏幕显示如下。Line7使得fram
8、e在屏幕中间显示,line8告诉程序当frame被关闭时终止,没有此语句,程序将不能终止,这种情况下只能在Dos(windows平台)命令提示符下,使用Ctrl+C来终止,在Eclipse中将使用红色终止按钮来终止程序。注意:要在调用居中语句前设置窗口大小,否则无效。12.4.2在Frame中添加组件使用add方法可以为Frame添加组件,如图所示程序。每一
此文档下载收益归作者所有