【发布时间】:2014-03-29 16:55:06
【问题描述】:
我正在尝试使用 Java 小程序制作一个杂耍程序,当我使用 eclipse 制作和查看 JApplet 时一切都很好,但是当我在浏览器中运行代码时,我得到 NoClassDefFoundError 这意味着有一些我的程序中在JApplet 中未定义的部分。
这是我的代码:
import java.awt.*;
import java.awt.event.*;
import java.awt.image.BufferedImage;
import java.io.*;
import java.net.*;
import javax.imageio.*;
import javax.swing.*;
public class Applet extends JApplet {
private int i = 0;
private Button prev = new Button("prev");
private Button next = new Button("next");
public void init() {
setSize(1100, 875);
prev.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (i == 0)
i = getList().length - 1;
else
i--;
repaint();
}
});
next.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (i == getList().length - 1)
i = 0;
else
i++;
repaint();
}
});
Panel buttons = new Panel();
buttons.setLayout(new FlowLayout());
buttons.add(prev);
buttons.add(next);
setLayout(new BorderLayout());
add("South", buttons);
}
public void paint(Graphics g) {
setImg(g, getImgPath());
}
public String[] getList() {
String[] str = { "./ (1).jpg", "./ (2).jpg", "./ (3).jpg","./ (4).jpg","./ (5).jpg","./ (6).jpg","./ (7).jpg","./ (8).jpg" };
return str;
}
public String getImgPath() {
return getList()[i];
}
public void setImg(Graphics g, String str) {
try {
URL url = new URL(getCodeBase(), str);
BufferedImage img = ImageIO.read(url);
g.drawImage(img, 50, 50, null);
} catch (IOException e) {
e.printStackTrace();
}
}
}
我的html代码
<html>
<meta http-equiv="Content-Type" content="text/html; charset=Cp1252" />
<body>
<applet code=Applet.class width="200" height="200">
</applet>
</body>
</html>
屏幕截图:
下载所有内容: https://www.dropbox.com/s/v0jqui0nomfb4zx/Code.zip
我的问题是我的程序的哪一部分未为 JApplet 定义
谢谢。
【问题讨论】:
-
请安装java最新插件
-
最新插件有什么用?
-
您是否点击了详细信息按钮?
标签: java swing noclassdeffounderror japplet