java编程华容道智力游戏

原创 2012年03月26日 18:10:44

华容道java代码:

import java.awt.*;
import java.awt.event.*;
public class MoveExample
{
 public static void main(String args[])
 {
  new Hua_Rong_Road();
 }
}
 class Person extends Button implements FocusListener
{
 int number;
 Color c=new Color(255,245,170);
 public Person(final int number,final String s)
 {
  super(s);
  setBackground(c);
  this.number=number;
  c=getBackground();
  addFocusListener(this);
 }
 public void focusGained(final FocusEvent e)
 {
  setBackground(Color.red);
 }
 public void focusLost(final FocusEvent e)
 {
  setBackground(c);
 }
}
 class Hua_Rong_Road extends Frame implements  MouseListener,KeyListener,ActionListener
 {
  Person person[]=new Person[10];
  Button left,right,above,below;
  Button restart=new Button("重新开始");
  public Hua_Rong_Road()
  {
   init();
   setBounds(100,100,320,360);
   setVisible(true);
   validate();
   addWindowListener(new WindowAdapter()
   {public void windowClosing(WindowEvent e)
   {
    System.out.println(0);
   }});
  }
  public void init()
  {
   setLayout(null);
   add(restart);
   restart.setBounds(100,320,120,25);
   restart.addActionListener(this);
   String name[]={"曹操","关羽","张飞","刘备","赵云","黄忠","兵","兵","兵","兵"};
   for(int k=0;k<name.length;k++)
   {
    person[k]=new Person(k,name[k]);
    person[k].addMouseListener(this);
    person[k].addKeyListener(this);
    add(person[k]);
   }
   person[0].setBounds(104,54,100,100);
   person[1].setBounds(104,154,100,50);
   person[2].setBounds(54,154,50,100);
   person[3].setBounds(204,154,50,100);
   person[4].setBounds(54,54,50,100);
   person[5].setBounds(204,54,50,100);
   person[6].setBounds(54,254,50,50);
   person[7].setBounds(204,254,50,50);
   person[8].setBounds(104,204,50,50);
   person[9].setBounds(154,204,50,50);
   person[9].requestFocus();
   left=new Button();right=new Button();
   above=new Button();below=new Button();
   add(left);add(right);add(above);add(below);
   left.setBounds(49,49,5,260);
   right.setBounds(254,49,5,260);
   above.setBounds(49,49,210,5);
   below.setBounds(49,304,210,5);
   validate();
  }
  public void keyTyped(KeyEvent e){}
  public void KeyReleased(KeyEvent e){}
  public void KeyPressed(KeyEvent e)
  {
   Person man=(Person)e.getSource();
   if(e.getKeyCode()==KeyEvent.VK_DOWN)
   {
    go(man,below);
   }
   if(e.getKeyCode()==KeyEvent.VK_UP)
   {
    go(man,above);
   }
   if(e.getKeyCode()==KeyEvent.VK_LEFT)
   {
    go(man,left);
   }
   if(e.getKeyCode()==KeyEvent.VK_RIGHT)
   {
    go(man,right);
   }
  }
  public void mousePressed(MouseEvent e)
  {
   Person man=(Person)e.getSource();
   int x=-1,y=-1;

img的src如果加载失败后样式的一些解决方案

转载地址:https://bitsofco.de/styling-broken-images/?utm_source=CSS-Weekly&utm_campaign=Issue-206&utm_med...

JAVA开发的华容道游戏

 import java.awt.*;import java.applet.*;import java.awt.event.*;class People extends Button implemen...

【华容道】游戏JAVA源码

  • 2009年09月26日 10:17
  • 1KB
  • 下载

cocos2dx c++实现小游戏--华容道

华容道是一款中国民间的小游戏,童年的回忆(百度百科链接)。玩法很多,具体规则这不再赘述。 这里使用的是c++进行编写, 编译器为xcode,内容并不复杂。主要功能包括,计步,重置,退回,保存。资源文...

Java 游戏 华容道

  • 2015年12月15日 17:02
  • 4KB
  • 下载

JAVA小游戏1—华容道

  • 2008年06月25日 18:32
  • 5KB
  • 下载

华容道算法和使用广度搜索的一些单人游戏求解框架

最新无聊在玩华容道,结果玩的时候,有些关不知道怎么过,就自己想着写程序来求最小还原步数。经过一番搜索和思考,写出来下面的代码,其中借鉴了别人的红黑树的代码,还有就是使用广度搜索来求解的思想。    ...

java 华容道小游戏设计

  • 2017年12月02日 21:38
  • 2.16MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java编程华容道智力游戏
举报原因:
原因补充:

(最多只允许输入30个字)