// import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; import java.util.*; public class AppletServer extends JApplet { public void init() { JPanel p = new JPanel(new BorderLayout(3,3)); p.setBorder( new EmptyBorder(5,5,5,5) ); Enumeration en = getAppletContext().getApplets(); Vector clientList = new Vector(); while(en.hasMoreElements()) { Applet applet = (Applet)en.nextElement(); System.out.println( "Applet: " + applet.getName() ); if (!applet.getName().equals( getName() )) { clientList.add(applet.getName()); } } final JList list = new JList(clientList); list.setBorder(new BevelBorder(BevelBorder.LOWERED)); p.add( list, BorderLayout.WEST ); final JTextArea messageLog = new JTextArea(2,2); messageLog.setWrapStyleWord(true); messageLog.setEditable(false); messageLog.setFocusable(false); p.add( new JScrollPane( messageLog, ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER) ); final JTextField message = new JTextField(20); message.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent ae) { Object[] values = list.getSelectedValues(); if (values.length==0) { JOptionPane.showMessageDialog( AppletServer.this, "No client selected to give the message!", "Select a client!", JOptionPane.ERROR_MESSAGE ); } else { for (int ii=0; ii