服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

java applet的应用技巧


  java applet因其强大的功能在网络的运用中越来越受重视,然而java的编程却不是那么简单的;所谓万事开头难,java的编写也是如此,因此我在这里介绍一些最基本的java应用技巧给大家做参考,希望能对大家有所启发。以下我介绍一些java运用中最基本的技术,与这些程序相关的例子请看applet实例。

显示文字
读取参数
响应鼠标
响应键盘
显示图像文件
播放声音文件
获取程序显示空间大小
设置颜色

--------------------------------------------------------------------------------


显示文字
显示文字是java中最基本的功能,使用非常简单的方式来支持文字的显示,只要使用类graphics中的drawstring()函数就能实现。我们来看最简单的helloworld例子:

//helloworld.java
import java.awt.*;
import java.applet.*;
public class helloworld extends applet
{
string text="hello world!";
public void paint(graphics g)
{g.drawstring(text,20,20);} //在坐标20,20处显示text的内容
}

这是最基本的java applet,运行的时候仅显示“hello world!”。java支持unicode,因此中文也能在java中很好地显示出来,我们把“hello world!”改成“世界你好!”,同样可以显示(如果无法正确显示,则是浏览器的bug,我所用的ie4.0就存在这样的问题,请改用netscape)。值得注意的是,在java中每个字符用16位来表示,而不是8位,这与c语言是不同的。


--------------------------------------------------------------------------------


读取参数
java applet也可以从所在的页面读取参数,页面通过<param name="??" value="??">将参数传递给applet,程序应该在初始化的阶段将参数读入,完成程序的准备工作。例子:

//showtext.java
import java.awt.*;
import java.applet.*;
public class showtext extends applet
{
string text;
public void init()//初始化函数
{
text=getparameter("word");//读入参数word
}
public void paint(graphics g)
{g.drawstring(text,20,20);}
}

因此我们应该在页面中设置word的参数:

<applet code="showtext.class" width="100" height="28">
<param name="word" value="hello world!">
</applet>

此时程序就可以从参数"word"中读到"hello world!",然后显示出来。当然在参数设置中,word和word是一样的,不区分大小写。


--------------------------------------------------------------------------------


响应鼠标
与用户的交互是java的主要作用,也正是java吸引人的原因,用户可以通过鼠标和键盘与java applet程序对话。我们先来看响应鼠标的例子:

//mouse.java
import java.awt.*;
import java.applet.*;
public class mouse extends applet
{
string text="";
public void paint(graphics g)
{g.drawstring(text,20,20);}
public boolean mousedown(event evt,int x,int y)//鼠标按下处理函数
{
text="mouse down";
repaint();
return true;
}
public boolean mouseup(event evt,int x,int y)//鼠标松开处理函数
{
text="";
repaint();
return true;
}
}

当用户点击程序时,程序将显示"mouse down",说明程序对鼠标作出了响应。然而要注意java并不区分鼠标的左右键。


--------------------------------------------------------------------------------


响应键盘
我们再来看对键盘响应的例子:

//keyboard.java
import java.awt.*;
import java.applet.*;
public class keyboard extends applet
{
string text="";
public void paint(graphics g)
{g.drawstring(text,20,20);}
public boolean keydown(event evt,int x)//键盘被按下的处理函数
{
text="key down";
repaint();
return true;
}
public boolean keyup(event evt,int x)//键盘被松开的处理函数
{
text="";
repaint();
return true;
}
}

当键盘被按下时,程序就会显示"key down",键盘松开时清除文字。利用这些函数,我们就可以用鼠标和键盘函数与用户交互。



--------------------------------------------------------------------------------


显示图像文件
由于图像文件在web上的广泛应用,因此java也提供了许多函数,对图像进行各种处理,比如对图像进行显示、拷贝、切割、缩放、各种颜色的变换等等。最常使用的就是图像的显示,而且也非常简单,仅仅用drawimage()就可实现:

//showimg.java
import java.awt.*;
import java.applet.*;
import java.awt.image.*;
import java.awt.image.imageobserver;
import java.net.url;
public class showimg extends applet implements imageobserver//使用imageobserver接口
{
image img;
public void init()
{
string imgname=getparameter("imagename");
url imgurl=getdocumentbase();
img=getimage(imgurl,imgname);
}
public void paint(graphics g)
{g.drawimage(img,0,0,this);}
}

此时将图像文件名放在参数imagename中传送给程序,程序将显示出图像。目前,java支持的图像格式有gif、jpg文件。要注意,由于图像文件是异步传输的,因此我们使用了接口imageobserver来处理图像传输过程中的信息;当然必要的时候,我们可以用类mediatracker来跟踪图像的传输。


--------------------------------------------------------------------------------


播放声音文件
声音和图像是息息相关的,既然说了图像当然要再讲一讲声音。java提供了简单的声音函数来支持声音的播放,这几个声音函数分别是play()、loop()和stop()。我们来看用play()函数来播放声音的例子:

//sound.java
import java.awt.*;
import java.applet.*;
import java.net.url;

public class sound extends applet
{
string soundname;
public void init()
{
soundname=getparameter("soundname");
}
public boolean mousedown(event evt,int x,int y)
{
play(getdocumentbase(),soundname);
return true;
}
}

把声音文件通过参数"soundname"传送给程序,当鼠标点击程序时,就会播放指定的声音文件。要注意,声音的播放也是异步执行的,当执行play()函数时,函数立即返回,声音由后台程序播放。


--------------------------------------------------------------------------------


获取程序显示空间大小
java applet是在页面中运行的,在页面中我们通过定义"width=?? height=??"来规定java程序的显示空间。因此java程序获得此信息是十分必要的,java程序应该通过调整自身来适应外部空间。下面我通过一个画椭圆的程序来介绍获得显示空间大小的方法:

//getsize.java
import java.awt.*;
import java.applet.*;

public class getsize extends applet
{
dimension sz;
public void init()
{sz=size();}//获得空间大小
public void paint(graphics g)
{g.filloval(0,0,sz.width,sz.height);}
}

程序通过size()函数获得空间大小,此函数返回的是dimension类,程序的显示宽度和高度都包含在返回的dimention类中。


--------------------------------------------------------------------------------


设置颜色
要做一个漂亮的java applet程序一定离不开颜色的设置,包括背景颜色和前景颜色,java提供了丰富的颜色处理函数。我们这里只介绍最简单的颜色设置,这个程序将背景设置成蓝色,前景设置成绿色,并用前景色填充一个矩形:

//setcolor.java
import java.awt.*;
import java.applet.*;

public class setcolor extends applet
{
public void paint(graphics g)
{
setbackground(color.blue);//设置背景色为蓝色
setforeground(color.green);//设置前景色为绿色
g.fillrect(25,4,50,20);
}
}

另外,还可以用graphics类中的secolor()函数来改变画笔颜色。

扫描关注微信公众号