java中applet中的drawimage怎么用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中applet中的drawimage怎么用相关的知识,希望对你有一定的参考价值。

图像使用的支持分布于java.applet, java.awt, 和 java.awt.image 包中。每一个图像都用一个 java.awt.Image 对象表示。除了Image 类外,java.awt 包提供了其它的基本的图像支持,例如Graphics 类的 drawImage 方法,Toolkit 对象的getImage 方法以及MediaTracker 类。在java.applet包中, Applet 类的getImage 方法使得可以很容易的使用URL加载图像。最后,java.awt.image包提供可用于创建、操纵和观察图像的 接口和类。

加载图像
AWT可以很简单的加载两种格式的图像: GIF 和 JPEG。Applet和Toolkit 类提供了getImage 方法可以使用那两种格式。像这样使用:
myImage = getImage(URL); //只能在Applet 子类里

显示图像
通过传递到paintComponent方法的Graphics对象可以很容易的显示图像。你简单的在Graphics 对象上调用一个drawImage方法就可以。例如:
g.drawImage(myImage, 0, 0, this);
参考技术A Applet类自身没有这个方法,是paint事件中的Graphics可以drawImage
使用也不复杂,
drawImage(image, x, y, null);

这样就可以追问

就是这个image参数不会用 图片不知道为什么不能显示

追答

Applet 本身就有方法

Image
getImage(URL url)
Returns an Image object that can then be painted on
the screen.

Image
getImage(URL url,
String name)
Returns an Image object that can then be painted on
the screen.

serializable 类 DrawImage 未声明类型为 long 的静态终态 是啥意思

我的问题是这样的
import java.awt.*;
import java.applet.*;//导入applet包中的类
import java.awt.event.*;

public class DrawImage extends Applet implements MouseListener//实现MouseListener接口
Image[] image;
static int n=0;
static int total=12;//一共提供12张图片
public void init()
addMouseListener(this);//事件源注册监听器
setForeground(Color.red);
setFont(new Font("宋体",Font.BOLD,30));
image =new Image[12];
for (int i=0;i<12;i++)
image[i]=getImage(getCodeBase(),"images/"+i+".jpg");


public void paint(Graphics g)
g.drawString("众志成城,抗震救灾",60,30);//输出文字
g.drawImage(image[n%total], 5, 50, this);//输出图片
n++;

public void mouseClicked(MouseEvent me) //重写mouseClicked方法
repaint();//调用重绘方法


public void mouseEntered(MouseEvent me) //实现mouseEntered方法


public void mouseExited(MouseEvent me) //实现mouseExited方法


public void mousePressed(MouseEvent me) //实现mousePressed方法


public void mouseReleased(MouseEvent me) //实现mouseReleased方法



public class DrawImage extends Applet implements MouseListener中的DrawImage用ECLIPPSE出现serializable 类 DrawImage 未声明类型为 long 的静态终态的错误
那这样我应该怎么改啊?
在浏览器中显示载入JAVA小程序失败
我的HTML代码没错

实现 serializable 接口 (不过这个接口里没方法)
只需要指定private static final long serialVersionUID =
后面的数字随便 长点比较好。。

因为不继承 serializable 类的数据类型或者类 无法在流中传递 (HTTP是无状态协议所以对象都是在流中传递)
JAVA本身90%的类全部实现了serializable 接口
参考技术A 加个
private static final long serialVersionUID = 3617859655330969141L
后面的数字随便写,只是作为一个serializable 的标志.浏览器不能载入的可能原因可能是浏览器本身禁掉了applet.换个浏览器比如firefox看看.IE7好象是禁止applet的.

以上是关于java中applet中的drawimage怎么用的主要内容,如果未能解决你的问题,请参考以下文章

JAVA Graphics类中drawImage方法怎么用

JAVA的drawImage方法

serializable 类 DrawImage 未声明类型为 long 的静态终态 是啥意思

如何在我的 Java Applet 上运行图像而无需签名?

e557. 在Applet中显示图片

怎么用JAVA编程实现实时动态运行的模拟时钟?