getParameter()
method of the java.applet.Applet
class. The program below demonstrates this with a generic string drawing applet. The applet parameter "Message" is the string to be drawn.
import java.applet.*;
import java.awt.*;
public class DrawStringApplet extends Applet {
public void paint(Graphics g) {
String inputFromPage = this.getParameter("Message");
g.drawString(inputFromPage, 50, 25);
}
}
You also need an HTML file that references your applet. The following simple HTML file will do:
<HTML>
<HEAD>
<TITLE> Draw String </TITLE>
</HEAD>
<BODY>
This is the applet:<P>
<APPLET code="DrawStringApplet.class" width="300" height="50">
<PARAM name="Message" value="Howdy, there!">
This page will be very boring if your
browser doesn't understand Java.
</APPLET>
</BODY>
</HTML>
Of course you are free to change "Howdy, there!" to a "message" of your choice. You only need to change the HTML, not the Java source code. PARAMs let you customize applets without changing or recompiling the code.
This applet is very similar to the HelloWorldApplet. However rather than hardcoding the message to be printed it's read into the variable
inputFromPage
from a PARAM in the HTML.
You pass getParameter()
a string that names the
parameter you want. This string should match the name of a
<PARAM>
tag in the HTML page.
getParameter()
returns the value of the parameter.
All values are passed as strings. If you want to get another
type like an integer, then you'll need to pass it as a string
and convert it to the type you really want.
The <PARAM>
HTML tag is also straightforward. It occurs between <APPLET>
and </APPLET>
. It has two attributes of its own, NAME and VALUE. NAME identifies which PARAM this is. VALUE is the value of the PARAM as a String. Both should be enclosed in double quote marks if they contain white space.
An applet is not limited to one PARAM. You can pass as many named PARAMs to an applet as you like. An applet does not necessarily need to use all the PARAMs that are in the HTML. Additional PARAMs can be safely ignored.