Applet无法从html文件中读取参数

时间:2014-12-24 00:55:19

标签: java html eclipse nullpointerexception applet

这是在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>

0 个答案:

没有答案