|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
java也能做一些底层语言开发做的事情(难度很高,不是java顶尖高手是做不来的),
JavaApplet经常使用来显现存储在GIF文件中的图象。JavaApplet装载GIF图象十分复杂,在Applet内利用图象文件时需界说Image对象。多半JavaApplet利用的是GIF或JPEG格局的图象文件。Applet利用getImage办法把图象文件和Image对象接洽起来。
Graphics类的drawImage办法用来显现Image对象。为了进步图象的显现效果,很多Applet都接纳双缓冲手艺:起首把图象装进内存,然后再显现在屏幕上。
Applet可经由过程imageUpdate办法测定一幅图象已装了几在内存中。
装载一幅图象
Java把图象也当作Image对象处置,以是装载图象时需起首界说Image对象,格局以下所示:
Imagepicture;
然后用getImage办法把Image对象和图象文件接洽起来:
picture=getImage(getCodeBase(),"ImageFileName.GIF");
getImage办法有两个参数。第一个参数是对getCodeBase办法的挪用,该办法前往Applet的URL地点,如www.sun.com/Applet。第二个参数指定从URL装进的图象文件名。假如图文件位于Applet之下的某个子目次,文件名中则应包含响应的目次路径。
用getImage办法把图象装进后,Applet即可用Graphics类的drawImage办法显现图象,情势以下所示:
g.drawImage(Picture,x,y,this);
该drayImage办法的参数指了然待显现的图象、图象左上角的x坐标和y坐标和this。
第四个参数的目标是指定一个完成ImageObServer接口的对象,即界说了imageUpdate办法的对象(该办法随后会商)。
显现图象(ShowImage.java)
//源程序清单
importjava.awt.*;
importjava.applet.*;
publicclassShowImageextendsApplet
Imagepicure;//界说范例为Image的成员变量
publicvoidinit()
{
picture=getImage(getCodeBase(),"Image.gif");//装载图象
}
publicvoidpaint(Graphicsg)
{
g.drawImage(picture,0,0,this);//显现图象
}
}
为此,HTML文件中有关Applet的语句以下:
<HTML>
<TITLE>ShowImageApplet</TITLE>
<APPLET
CODE="ShowImage.class"//class文件名为ShowImage.class
WIDTH=600
HEIGHT=400>
</APPLET>
</HTML>
编译以后运转该Applet时,图象不是一挥而就的。这是由于程序不是drawImage办法前往之前把图象完全地装进并显现的。与此相反,drawImage办法创立了一个线程,该线程与Applet的原有实行线程并发实行,它一边装进一边显现,从而发生了这类不一连征象。为了进步显现效果。很多Applet都接纳图象双缓冲手艺,即先把图象完全地装进内存然后再显现在屏幕上,如许可以使图象的显现一挥而就。
<p>
再举这样一个例子:如果你想对一个数字取绝对值,你会怎么做呢?java的做法是intc=Math.abs(-166);而ruby的做法是:c=-166.abs。呵呵,这就看出了java与ruby的区别。 |
|