您的位置:首页技术文章
文章详情页

JAVA教程 第六讲 Java的线程和Java Applet(二)

【字号: 日期:2024-03-05 18:54:56浏览:4作者:猪猪

6.3 Java Applet

前面的章节我们阐述了Application的应用,这一讲我们将介绍java的另一类应用java Applet,即java小应用程序。

在Java问世的头几年里,之所以如此热门,其根本原因还是在于Java具有'让Internet动起来'的能力。具体地说,就是Java能创建一种特殊类型的程序(通常称作'小应用程序'或者Applet),具备Java能力的Web浏览器可从网上下载这种程序,然后运行。

目前,几乎所有浏览器均支持动态HTML(DHTML)和脚本编制(支持XML的浏览器也有很多),所以比起Java刚刚问世的时候,浏览器能够做的事情要多得多。但尽管如此,由于小应用程序是用一种全功能的程序设计语言编制的,所以同HTML、XML和脚本语言的任何一种可能的组合相比,它仍然具有应用前景!

6.3.1 Applet 介绍(1)

Applet就是使用Java语言编写的一段代码,它可以在浏览器环境中运行。它与Application的区别主要在于其执行方式的不同。application 是从其中的main() 方法开始运行的,而Applet 是在浏览器中运行的,必须创建一个HTML 文件,通过编写HTML 语言代码告诉浏览器载入何种Applet 以及如何运行。

例6.7 HelloWorld.java 源程序:

import java.awt.Graphics; //引入图形类Graphics

import java.applet.Applet; //引入Applet类

public class HelloWorld extends Applet {

String hw_text ;

public void init () { //init()方法是Applet首先执行的方法

hw_text = 'Hello World';

}

public void paint(Graphics g) {

g.drawString (hw_text , 25, 25) ;

 //在坐标为(25,25)的地方显示字符串hw_text

}

}

Applet程序编写完后,首先要用java编译器编译成为字节码文件,然后编写相应的HTML文件才能够正常执行,例如为运行上面的Applet程序所编写的HTML文件HelloWorld.html如下:

[]

[]

…… //参数名称及其值

[alternateHTML]

注意:

1)不支持Java的浏览器会把

之间的普通HTML文档显示出来;支持Java的浏览器,则把其中的普通HTML文档忽略。

2)AppletViewer仅支持

标记,其它标记不会被显示出来。

经过精心设计,可以使java程序同时是Applet与Application,如下例所示:

例6.9

 import java.awt.*;

 import java.awt.event.*;

 public class AppletApp extends Applet {

public void main(String args[]) {

Frame frame=new Frame('Application'); //构造一个Frame

AppletApp app=new AppletApp();

frame.add('Center',app);

frame.setSize(200,200); //改变Frame的尺寸

 frame.validate();

 frame.setVisible(true); //使Frame可见

 frame.addWindwoListener(new WindowControl(app));

//给Frame加入监听器

 app.init(); //初始化Applet

 app.start(); //运行该Applet

 }

public void paint(Graphics g) { //重画方法

g.drawString('hello world',25,25);

}

public void destroy(){

System.exit(0);

}

 }

 class WindowControl extends WindowAdapter { //监听器类

Applet c;

public WindowControl(Applet c) { //构造函数

this.c=c;

}

public void windowClosing(WindowEvent e) {

 //关闭窗口时调用的方法

c.destroy( );

}

 }

6.3.2 Applet的AWT绘制

看图

Applet程序中所采用的AWT的绘图机制主要涉及三个方法:paint()方法、update()方法和repaint()方法,update()方法和paint()方法都有一个Graphics类参数。Graphics是画图的关键,它可以支持两种绘图:一种是基本的绘图,如:画线、矩形、圆等;另一种是画图象,主要用于动画制作。

要进行绘图,首先要找到一个Graphics类的对象。update()方法和paint()方法所传递的参数都是Graphics类的对象,因此主要是通过重载它们来进行绘图,这是在动画程序中经常使用的方法。我们还可以通过getGraphics()方法得到一个Graphics类的对象,这个对象和update()方法和paint()方法中所传递的对象一样,都是该成员所对应的Graphics类的对象。得到了Graphics类的对象,就可使用各种绘图方法。

Graphics中提供的图形绘制方法有:

paint( ) //进行绘图的具体操作,必须有程序员重写

update( ) //用于更新图形,先清除背景、前景,再调用paint()

repaint( ) /*用于重绘图形,在组件外形发生变化,即大小改变或位置移动时,repaint( )方法立即被系统自动调用,而实际上repaint()方法是自动调用update()方法*/

下面的方法支持基本的绘图和画图像:

void drawLine( )

void drawArc( )

void drawPolygon( )

void drawRect( )

void drawRoundRect( )

void fill3DRect( )

void fillOval( )

java.awt.Graphics类

输出文字:

void drawBytes( )

void drawChars( )

void drawString( )

标签: Java
相关文章: