//アプレットからTCPクライアントを実現する

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.*;
import java.io.*;
import java.awt.Graphics;

public class test extends JApplet implements ActionListener{
	Timer timer;
	int iCount = 0;
	String hostname;
	public void init(){
		URL url;
		url = getCodeBase();
		hostname = url.getHost();
		timer = new Timer(200,this);
		timer.start();
	}
	public void actionPerformed(ActionEvent e){
		repaint();
	}
	public void paint(Graphics g){
		g.setColor(Color.WHITE);
		g.fillRect(0,0,getSize().width,getSize().height);
		g.setColor(Color.BLACK);
		show1(g);
		g.setColor(Color.RED);
		show2(g);
	}
	public void show1(Graphics g){
		try{
			//ソケットを生成
			Socket socket = new Socket(hostname,2000);
			//出力ストリームを取得
			//PrintWriterout = new PrintWriter(socket.getOutputStream(),true);
			//入力ストリームを取得
			BufferedReader in = new BufferedReader(
					new InputStreamReader(
			socket.getInputStream()));
			//「HelloWorld」をサーバーに送る
			//out.println("HelloWorld");
			//読み込んだデータを表示
			g.drawString(in.readLine(),0,20);
			//入出力ストリームを閉じる
			//out.close();
			in.close();
			//ソケットを閉じる
			socket.close();
		}catch(IOException e){
			g.drawString(e + "",0,20);
		}
	}
	public void show2(Graphics g){
		try{
			//ソケットを生成
			Socket socket = new Socket(hostname,2001);
			//入力ストリームを取得
			BufferedReader in = new BufferedReader(
					new InputStreamReader(
					socket.getInputStream()));
			int r = 1 - Integer.parseInt(in.readLine());
			g.fillArc(120,50,80,80,90,r);
			g.setColor(Color.BLACK);
			g.drawOval(120,50,80,80);
			in.close();
			//ソケットを閉じる
			socket.close();
		}catch(IOException e){
		}

	}
}


▲トップページ > JAVA関連