这是在eclipse中发生的事情,我有一个包,并且已经将applet文件和HTMLL文件存储在同一个包中。 (这是在eclipse中编写applet的方法吗?)。代码应该从HTML文件中获取参数以更改面板上消息的颜色,字体等。该程序还有一个默认消息。
运行程序时会打印默认消息(如果没有HTML文件运行),但是当使用HTML文件中的参数时,我会得到一个NPE。
我做错了吗?
以下是参数的代码和相应的HTML文件。
import java.applet.Applet;
import java.awt.*;
import javax.swing.*;
public class Exercise18_04 extends JApplet {
private String message; // Message to display
private int x = 20; // Default x coordinate
private int y = 20; // Default y coordinate
private String color;
private String fontName;
private int fontSize = 20;
// Initialize the applet
public void init() {
// Get parameter values from the HTML file
message = getParameter("MESSAGE");
x = Integer.parseInt(getParameter("X"));
y = Integer.parseInt(getParameter("Y"));
color = getParameter("COLOR");
fontName = getParameter("FONTNAME");
fontSize = Integer.parseInt(getParameter("FONTSIZE"));
// Create a message panel
MessagePanel messagePanel = new MessagePanel(message);
messagePanel.setXCoordinate(x);
messagePanel.setYCoordinate(y);
if (color.equals("red")) {
messagePanel.setForeground(Color.red);
}
else if (color.equals("yellow"))
messagePanel.setForeground(Color.yellow);
else if (color.equals("green"))
messagePanel.setForeground(Color.green);
messagePanel.setFont(new Font(fontName, Font.BOLD, fontSize));
// Add the message panel to the applet
add(messagePanel);
}
}
<html>
<body>
<applet
code = "Exercise18_04.class"
width = 250
height = 80
>
<param name = MESSAGE value = "Welcome to Java" />
<param name = X value = 40 />
<param name = Y value = 50 />
<param name = COLOR value = "red" />
<param name = FONTNAME value = "Monospaced" />
<param name = FONTSIZE value = 20 />
</applet>
</body>
</html>