《JAVA五子棋.rtf》由会员分享,可在线阅读,更多相关《JAVA五子棋.rtf(7页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.*;public class WuZiQi extends KeyAdapter boolean start=false;JFrame frame;Thread timerThread;int h,l;/int pans =new int1111;/int gbx=5;int gby=5;int ziShu=0;int shui=0;WuZiQi()frame=new JFrame();frame.getContentPane().ad
2、d(new Screen();frame.addKeyListener(this);frame.setSize(12*40+5*2,12*40+22+5*2+100);/frame.setVisible(true);frame.repaint();frame.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0););/public void keyPressed(KeyEvent evt)switch(evt.getKeyCode()case KeyEvent.VK
3、_ENTER:if(ziShu%2=0)/heiXia();else baiXia();shui=shuiYing();break;case KeyEvent.VK_ESCAPE:System.exit(1);break;case KeyEvent.VK_LEFT:guangBiaoDong(-1,0);/break;case KeyEvent.VK_RIGHT:guangBiaoDong(1,0);/break;case KeyEvent.VK_DOWN:guangBiaoDong(0,1);/break;case KeyEvent.VK_UP:guangBiaoDong(0,-1);/br
4、eak;frame.repaint();class Screen extends JComponent public void paint(Graphics g)Graphics2D g2d=(Graphics2D)g;xianShi(g2d);/public static void main(String args)new WuZiQi();void xianShi(Graphics2D g2d)/xianShiQiPan(g2d);/xianShiQiZis(g2d);/xianShiGuangBiao(g2d);/g2d.setFont(new Font(STXingkai,1,30);
5、/0708 g2d.setColor(Color.black);g2d.drawString(0708,280,580);g2d.setFont(new Font(stCaiyun,1,40);if(shui=0)/g2d.setColor(Color.black);xianShiTiShiXia(g2d);/else g2d.setColor(Color.black);xianShiTiShiYing(g2d);/void guangBiaoDong(int fangX,int fangY)/if(gbx+fangX10|gbx+fangX10|gby+fangY0)else gbx=gbx
6、+fangX;gby=gby+fangY;void heiXia()/if(pansgbygbx=0)pansgbygbx=-1;ziShu+;void baiXia()/if(pansgbygbx=0)pansgbygbx=1;ziShu+;int shuiYing()/0:1:bai 1:hei return kanFangShuiYing(1,0)+kanFangShuiYing(0,1)+kanFangShuiYing(1,1)+kanFangShuiYing(1,-1);/-void xianShiQiPan(Graphics2D g2d)/g2d.setColor(Color.pi
7、nk);g2d.fillRect(0,0,40*12,40*12);/0,0,40*12,40*12 g2d.setColor(Color.BLACK);/for(int i=0;i11;i+)/40,*40+40,440,*40+40 g2d.drawLine(40,i*40+40,440,i*40+40);/for(int k=0;k11;k+)/*40+40,40,*40+40,440 g2d.drawLine(k*40+40,40,k*40+40,440);void xianShiQiZis(Graphics2D g2d)/for(int h=0;h11;h+)for(l=0;l=0&kanx+fx=0&kany+fy=0&kanx-fx=0&kany-fy=5?pansgbygbx:0);http:/