⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 simpletest.java

📁 javahomework(source).rar
💻 JAVA
字号:
import javax.swing.*; 
import java.awt.*; 
import java.awt.event.*; 
import java.util.*; 
import java.io.*;
import java.net.*;

public class SimpleTest extends JApplet
{
	ImpulseController impulse;
	PlayController play;
	SendController send;
	ReceiveController receive;
	SquareModel model;
	View viewA;
	View viewB;
	JButton rotate=new JButton("rotate");
	JButton down=new JButton("down");
	JButton left=new JButton("left");
	JButton right=new JButton("right");
	JButton pause=new JButton("pause");
	JButton space=new JButton("space");
	JTextArea outA=new JTextArea(50,20);
	JTextArea outB=new JTextArea(50,20);
	SimpleTimer timer=null;
	
	Thread receiveThread=new Thread()
	{
		public void run()
		{
			while(true)
			{
				receive.doReceive();
			}
		}
	};
	
	SimpleTimeTask downTask=new SimpleTimeTask(true)
	{
		public void run()
		{
			impulse.doDown();
			send.doRefreshSend();
		}
	};
	
	SimpleTimeTask removeTask=new SimpleTimeTask(true)
	{
		public void run()
		{
			impulse.doRemove();
			send.doAddLineSend();
		}
	};

	ActionListener RotateAction=new ActionListener()
	{
		public void actionPerformed(ActionEvent event)
		{
			//System.out.println("onRotateOper");
			play.onRotateOper();
			send.doRefreshSend();
		}
	};
	ActionListener DownAction=new ActionListener()
	{
		public void actionPerformed(ActionEvent event)
		{
			//System.out.println("onDownOper");
			play.onDownOper();
			send.doRefreshSend();
		}
	};
	ActionListener LeftAction=new ActionListener()
	{
		public void actionPerformed(ActionEvent event)
		{
			//System.out.println("onLeftOper");
			play.onLeftOper();
			send.doRefreshSend();
		}
	};
	ActionListener RightAction=new ActionListener()
	{
		public void actionPerformed(ActionEvent event)
		{
			//System.out.println("onRightOper");
			play.onRightOper();
			send.doRefreshSend();
		}
	};
	ActionListener SpaceAction=new ActionListener()
	{
		public void actionPerformed(ActionEvent event)
		{
			play.onSpaceOper();
			send.doRefreshSend();
		}
	};
	ActionListener PauseAction=new ActionListener()
	{
		boolean step=false;
		public void actionPerformed(ActionEvent event)
		{
			if(!step)
			{
				timer.pauseAllTask();
				step=true;
			}
			else
			{
				timer.goOnAllTask();
				step=false;
			}
		}
	};
	
	
	public void init() 
	{
		rotate.addActionListener(RotateAction);
		down.addActionListener(DownAction);
		left.addActionListener(LeftAction);
		right.addActionListener(RightAction);
		pause.addActionListener(PauseAction);
		space.addActionListener(SpaceAction);
		timer=new SimpleTimer(500);
		timer.addTask(downTask);
		timer.addTask(removeTask);
		////////////////////////////////////
		JPanel p1=new JPanel(),
			p2=new JPanel();
		p1.add(rotate);
		p1.add(down);
		p1.add(left);
		p1.add(right);
		p1.add(space);
		p1.add(pause);
		////////////////////////////////////
		model=new SquareModel(15,35);
		viewA=new SimpleView(15,35,outA);
		viewB=new SimpleView(15,35,outB);
		impulse=new ImpulseController(model,viewA);
		play=new PlayController(model,viewA);
		try
		{
			Socket clientSocket = new Socket(InetAddress.getLocalHost(), 3184);
			PrintWriter sout = new PrintWriter(clientSocket.getOutputStream(), true);
			BufferedReader sin=new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
			send=new SendController(model,sout);
			receive=new ReceiveController(model,viewB,sin);
		}
		catch(IOException e)
		{
			System.out.println("Failed To Connect");
			//return;
		}
		////////////////////////////////////
		Container cp = getContentPane(); 
		p2.add(outA);
		p2.add(outB);
		cp.add(BorderLayout.NORTH,p1);
		cp.add(p2); 
		receiveThread.start();
		timer.start();
		//cp.add(new JTextArea(50,60));
	}
	public static void main(String[] args) 
	{ 
		Console.run(new SimpleTest(),500,800); 
	} 
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -