![]() |
CS 596 Java Programming Fall Semester, 1998 Communicating Applets |
|
|---|---|---|
|
San Diego State University -- This page last updated 16-Dec-98 |
<DIV ALIGN="center">
<APPLET
ARCHIVE="AppletClasses.jar"
CODE="ReceiverApplet.class"
WIDTH=100 HEIGHT=100
NAME="pete">
</APPLET>
<APPLET
ARCHIVE="AppletClasses.jar"
CODE="ReceiverApplet.class"
WIDTH=100 HEIGHT=100
NAME="sam">
</APPLET>
<APPLET
ARCHIVE="AppletClasses.jar"
CODE="SenderApplet.class"
WIDTH=100 HEIGHT=100>
Your browser does not support Java applets, so
you can not see this applet operate.
</APPLET>
</DIV>
import java.applet.*;
import java.awt.Graphics;
import java.awt.Dimension;
public class ReceiverApplet extends Applet
{
String message = "Not set";
public void paint( Graphics display )
{
display.drawString( message, 20, 20 );
// -1 to account for width of line
Dimension size = getSize();
display.drawRect( 0, 0, size.width-1, size.height-1);
}
public void setMessage( String newMessage )
{
message = newMessage;
repaint();
}
}
import java.applet.*;
import java.util.Enumeration;
import java.awt.Graphics;
import java.awt.event.*;
import java.awt.Button;
public class SenderApplet extends Applet
{
public void init( )
{
Button sam = new Button( "Sam" );
add( sam );
sam.addActionListener( new SamListener() );
Button doIt = new Button( "Do it" );
add( doIt );
doIt.addActionListener( new DoItListener() );
}
class SamListener implements ActionListener
{
public void actionPerformed( ActionEvent event )
{
// Communication using applet name set in HTML tag
AppletContext myContext = getAppletContext();
ReceiverApplet partner;
partner = (ReceiverApplet) myContext.getApplet( "sam" );
if ( partner == null )
getAppletContext().showStatus( "Can't find Sam" );
else
partner.setMessage( "Hi mom" );
}
}//Class DoItListener
class DoItListener implements ActionListener
{
public void actionPerformed( ActionEvent event )
{
// Show how to find applet in list of all applets in page
Enumeration applets = getAppletContext().getApplets();
while ( applets.hasMoreElements() )
{
Object applet = applets.nextElement();
if ( applet instanceof ReceiverApplet )
((ReceiverApplet) applet).setMessage( "Did it");
}
}
}//Class DoItListener
}