📄 simpletest.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 + -