在java.applet.Applet包中,有一个getImage()函数,如下定义:
Image getImage(URL url, String name)
关于它的使用的几点经验:
1 . 如果加载的图像与html文件属于同一个目录。在可以用getDocumentBase()获得它的URL地址,name是文件名,如:Img0.jpg。该文件是相对于URL地址的文件,即是一个相对地址。如果图像文件是在URL地址下的一个photo文件夹下,在此时,name应写成:photo\\Img0.jpg。
如下就是它的一个应用:
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class MyJavaButton extends Applet implements ActionListener {
Button btn;
Image myImage;
public void init(){
btn=new Button("关闭");
myImage=getImage(getDocumentBase(),"Img0.jpg");//获得该图像文件
add(btn);
btn.addActionListener(this);
}
public void paint(Graphics g){
g.drawImage(myImage, 0, 0, 300, 200, this);//绘出图形文件
g.drawString("hello",20,30);
}
public void actionPerformed(ActionEvent e){
System.exit(0);
}
}
2 . 如果此时的图像文件在F:\照片\photos目录下,则此时又如何编写:
下面是程序:
/*MyjavaButton.java
author:shizheng
*/
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.io.*;
public class MyJavaButton extends Applet implements ActionListener {
Button btn;
Image myImage;
public void init(){
btn=new Button("关闭");
File file=new File("F:\\照片\\photo");
try{
myImage=getImage(file.toURI().toURL(),"9.jpg");
}catch(Exception e){System.out.println(e.toString());}
System.out.println(getDocumentBase());
add(btn);
btn.addActionListener(this);
}
public void paint(Graphics g){
g.drawImage(myImage, 0, 0, 300, 200, this);
g.drawString("hello",20,30);
}
public void actionPerformed(ActionEvent e){
System.exit(0);
}
}
此时使用到了java.io包中的函数,就是toURI()函数,然后再将其转换成URL,使用的是URI函数中的toURL()方法。