// import javax.swing.JApplet; import javax.swing.JLabel; import javax.swing.JTextArea; import javax.swing.JButton; import javax.swing.JFrame; import java.awt.Container; import java.awt.FlowLayout; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.io.InputStreamReader; import java.io.BufferedReader; import java.io.IOException; import java.net.InetAddress; import java.net.Socket; public final class TempApplet extends JApplet implements ActionListener { private static final int PORT = 3003; private JLabel etikett = new JLabel("De senaste temperaturerna:"); private JTextArea tempfönster = new JTextArea(8, 20); private JButton knapp = new JButton("Rensa"); public void init() { try { Container cp = getContentPane(); cp.setLayout(new FlowLayout()); cp.add(etikett); cp.add(tempfönster); cp.add(knapp); knapp.addActionListener(this); InetAddress addr = InetAddress.getByName("localhost"); Socket socket = new Socket(addr, PORT); BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())); ServerListener t = new ServerListener(in, tempfönster); t.start(); } catch (IOException e) { tempfönster.append("Det har upppstått ett fel."); } } public void actionPerformed(ActionEvent e) { tempfönster.setText(""); } public static void main(String[] args) { TempApplet applet = new TempApplet(); JFrame frame = new JFrame("TempApplet"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().add(applet); frame.setSize(250, 200); applet.init(); applet.start(); frame.setVisible(true); } } // class TempApplet final class ServerListener extends Thread { private final BufferedReader fromServer; private final JTextArea utfönster; public ServerListener(BufferedReader fromServer, JTextArea utfönster) { this.fromServer = fromServer; this.utfönster = utfönster; } public void run() { String lineFromServer; try { while ((lineFromServer = fromServer.readLine()) != null) { utfönster.append(lineFromServer + "\n"); } utfönster.append("Servern har kopplat ner.\n"); } catch (IOException e) { utfönster.append("Det har upppstått ett fel."); } } } // class ServerListener