nbhkdz.com冰点文库

Java写的围棋游戏的源代码

时间:2011-10-10

import java.awt.*; import java.awt.event.*; import javax.swing.JOptionPane; public class Chess extends Frame { ChessPad chesspad= new ChessPad(); Chess() { add(chesspad); chesspad.setBounds(70,90,440,440); Label label=new Label("click to point,doubled_click to remove,right click to back",Label.CENTER); add(label); label.setBounds(70,55,440,24); label.setBackground(Color.orange); addWindowListener ( new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } } ); setLayout(null); setVisible(true); setSize(600,550); } public static void main(String args[]) { Chess chess=new Chess(); } } class ChessPad extends Panel implements MouseListener, ActionListener,FocusListener { int x = -1, y = -1, chessColor = 1;

String blackname="",whitename=""; Button button=new Button("start"); Button inputButton=new Button("input"); TextField text_1=new TextField("black please"), text_2=new TextField(""),//white please text_3=new TextField("black'name"), text_4=new TextField("white'name"); ChessPad() { add(inputButton); inputButton.setBounds(35,5,60,26); inputButton.addActionListener(this); inputButton.addFocusListener(this); add(text_3); text_3.setBounds(115,5,90,24); text_3.addFocusListener(this); text_3.setEditable(true); add(text_4); text_4.setBounds(315,5,90,24); text_4.addFocusListener(this); text_4.setEditable(true); add(button); button.setBounds(35,36,60,26); button.setEnabled(false); button.addActionListener(this); add(text_1); text_1.setBounds(115,36,90,24); text_1.setEnabled(false); text_1.setEditable(false); add(text_2); text_2.setBounds(315,36,90,24); text_2.setEnabled(false); text_2.setEditable(false); setSize(440,440);

setLayout(null); setBackground(Color.orange); addMouseListener(this); } public void paint(Graphics g) { for(int i=80;i<=400;i=i+20) { g.drawLine(40,i,400,i); } g.drawLine(40,420,400,420); for(int j=40;j<=380;j=j+20) { g.drawLine(j,80,j,420); } g.drawLine(400,80,400,420); g.fillOval(97,137,6,6); g.fillOval(337,137,6,6); g.fillOval(97,377,6,6); g.fillOval(337,377,6,6); g.fillOval(217,257,6,6); } public void focusGained(FocusEvent e) { Component com=(Component)e.getSource(); if(com==text_3) { text_3.setText(""); } else if(com==text_4) { text_4.setText(""); } } public void focusLost(FocusEvent e) { } public void mousePressed(MouseEvent e)

{ if(blackname.length()==0||whitename.length()==0) { JOptionPane.showMessageDialog(this,"please input the player's name,and click input button before you start chess!","reminder",JOptionPane.WARNING_MESSAGE); } else if(blackname.equals("black'name")) { JOptionPane.showMessageDialog(this,"please input the black player's name,and click input button","reminder",JOptionPane.WARNING_MESSAGE); } else if(whitename.equals("white'name")) { JOptionPane.showMessageDialog(this,"please input the white player's name,and click input button","reminder",JOptionPane.WARNING_MESSAGE); } else if(e.getModifiers()==InputEvent.BUTTON1_MASK) { x = (int)e.getX(); y = (int)e.getY(); int a=(x+10)/20,b=(y+10)/20; ChessPoint_black chesspoint_black=new ChessPoint_black(this); ChessPoint_white chesspoint_white=new ChessPoint_white(this); if(x/20<2||y/20<4||x/20>19||y/20>20) { } else { if(chessColor==1) { this.add(chesspoint_black); chesspoint_black.setBounds(a*20-10,b*20-10,20,20); chessColor=chessColor*(-1); text_2.setText(this.whitename+" please"); text_1.setText("");

} else if(chessColor==-1) { this.add(chesspoint_white); chesspoint_white.setBounds(a*20-10,b*20-10,20,20); chessColor=chessColor*(-1); text_1.setText(this.blackname+" please"); text_2.setText(""); } } } } public void mouseReleased(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { } public void actionPerformed(ActionEvent e) { if(e.getSource()==inputButton) { blackname=text_3.getText(); whitename=text_4.getText(); if(blackname.length()==0||whitename.length()==0) { JOptionPane.showMessageDialog(this,"you did

not

complete

the

information!","reminder",JOptionPane.WARNING_MESSAGE); } else if(blackname.equals("black'name")) { JOptionPane.showMessageDialog(this,"please input name","reminder",JOptionPane.WARNING_MESSAGE); } else if(whitename.equals("white'name")) { JOptionPane.showMessageDialog(this,"please input name","reminder",JOptionPane.WARNING_MESSAGE); } else { inputButton.setEnabled(false); text_3.removeFocusListener(this); text_3.setEnabled(false); text_4.setEnabled(false); button.setEnabled(true); text_1.setEnabled(true); text_1.setText(blackname+" please"); text_2.setEnabled(true); } } else if(e.getSource()==button) { inputButton.setEnabled(true); text_3.setEnabled(true); text_4.setEnabled(true); button.setEnabled(false); text_1.setEnabled(false); text_2.setEnabled(false); this.removeAll(); chessColor=1; add(button); button.setBounds(35,36,60,26); add(text_1); text_1.setBounds(115,36,90,24); text_1.setText("black please");

the

black

player's

the

white

player's

add(text_2); text_2.setBounds(315,36,90,24); text_2.setText(""); add(inputButton); inputButton.setBounds(35,5,60,26); add(text_3); text_3.setText("black'name"); text_3.addFocusListener(this); text_3.setBounds(115,5,90,24); add(text_4); text_4.setText("white'name"); text_4.setBounds(315,5,90,24); blackname=""; whitename=""; } } }

class ChessPoint_black extends Canvas implements MouseListener { ChessPad chesspad=null; ChessPoint_black(ChessPad p) { setSize(20,20); chesspad=p; addMouseListener(this); } public void paint(Graphics g) { g.setColor(Color.black); g.fillOval(0,0,20,20); } public void mousePressed(MouseEvent e) {

if(e.getModifiers()==InputEvent.BUTTON3_MASK) { chesspad.remove(this); chesspad.chessColor=1; chesspad.text_2.setText(""); chesspad.text_1.setText(chesspad.blackname+" please"); } } public void mouseReleased(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { if(e.getClickCount()>=2) { chesspad.remove(this); } } } class ChessPoint_white extends Canvas implements MouseListener { ChessPad chesspad=null; ChessPoint_white(ChessPad p) { setSize(20,20); chesspad=p; addMouseListener(this); }

public void paint(Graphics g) { g.setColor(Color.white); g.fillOval(0,0,20,20); } public void mousePressed(MouseEvent e) { if(e.getModifiers()==InputEvent.BUTTON3_MASK) { chesspad.remove(this); chesspad.chessColor=-1; chesspad.text_1.setText(""); chesspad.text_2.setText(chesspad.whitename+" please"); } } public void mouseReleased(MouseEvent e) { } public void mouseEntered(MouseEvent e) { } public void mouseExited(MouseEvent e) { } public void mouseClicked(MouseEvent e) { if(e.getClickCount()>=2) { chesspad.remove(this); } } }


Java写的围棋游戏的源代码.doc

Java写的围棋游戏的源代码 - Java???§??????ú??.txt?

围棋(改进版)源代码-Java Applet小程序.doc

/*一个 Java 围棋程序源代码改进版(2010-05-12 09:55:19)转载标签:杂谈 *..._Java_Applet 41页 免费 Java写的围棋游戏的源代... 3页 5下载券 ...

JAVA课程设计围棋对弈(含代码).doc

JAVA课程设计围棋对弈(含代码) - 摘要 围棋作为一个棋类竞技运动,在民间十分流行,为了熟悉五子棋规则及技 巧,以及研究简单的人工智能,决定用 Java 开发五子棋游戏...

围棋源代码-Java Applet小程序.doc

围棋源代码-Java Applet小程序 - /*一个 Java 围棋程序源代码(2010-04-26 21:20:19)转载标签: java 初步 */ import java.awt.*; ...

基于Java的“网络五子棋”游戏的设计和实现(含源文件)_....doc

传统五子棋的棋具与围棋类似,棋子分为黑白两色,棋盘有大有小,棋子放置于棋 盘...★ Eclipse 的最大特点是它能接受由 Java 开发者自己编写的开放源代码插件。 ...

Java制作围棋小游戏.doc

import java.awt.*; import java.awt.event.*; class ChessPad extends Panel...小游戏JAVA代码--贪吃蛇 3页 3下载券 Java写的围棋游戏的源代... 9页 1...

课程设计 围棋对弈游戏的开发.doc

大学出版社,冯博等,2005.1 摘要 II 围棋作为一个棋类竞技运动,在民间十分流行,为了熟悉五子棋规则及技 巧,以及研究简单的人工智能,决定用 Java 开发五子棋游戏。...

java围棋.doc

java围棋 - 这是java写的小游戏,其中难免有不妥之处,请见谅。... 这是java写的小游戏,其中难免有不妥之处,请...java围棋源代码(可运行) 暂无评价 3页 免费 ...

围棋程序的VB源代码.doc

围棋程序的VB源代码_理学_高等教育_教育专区。论文大概: 关键词:围棋 递归 ...Java写的围棋游戏的源代... 9页 1下载券 直流变频空调原理 36页 3下载券...

围棋游戏的设计与实现学士学位论文.doc

北京大学毕业设计 围棋游戏的设计与实现 摘要 围棋作为一个棋类竞技运动,在民间十分流行,为了熟悉五子棋规则及技巧,以 及研究简单的人工智能,决定用 Java 开发五子...

第24章 Java项目开发实战──五子棋游戏.ppt

在测试 类文件Test.Java中输入以下代码 【范例24-6】 把主窗体封装成一个类 ...游戏界面开发计算棋盘中每一条线的间距:这里用的是19 X 19 的围棋棋盘 总...

Java写的围棋游戏的源代码.txt

Java写的围棋游戏的源代码 - import java.awt.event.*

Java项目开发实战──五子棋游戏_图文.ppt

在测试 类文件Test.Java中输入以下代码 【范例24-6】 把主窗体封装成一个类 ...游戏界面开发计算棋盘中每一条线的间距:这里用的是19 X 19 的围棋棋盘 总...

JAVA围棋程序设计实训报告.pdf

这次实训主要选择编写围棋程序,用 java 开发这个程序,对于 java 的学习

围棋对弈界面课程设计.doc

安装 Source Code 这个选项将会安装 Java 所有核心类库的源代码。③选择 JDK 的...(3)具体实现 ①类设计 12 class chessGame 定义了整个围棋游戏的布局它继承的...

基于Java的五子棋游戏的设计.doc

“ 尧造围棋 ” 之前, 民间就已有五子棋游戏; 一说源于围棋,是围棋发展的一...一个 Java 程序的开发过程如图 10 所示。商业源代码,全套计算机毕业设计免费下载...

java围棋.doc

java围棋 - JAVA围棋程序代码,JAVA教科书的经典案例... import java.awt.*; import java.awt.event.*; import...黑白棋java代码 8页 1下载券 Java写的围棋游戏...

基于的手机围棋游戏的设计.doc

模拟器中设计并开发了一个便于携带的手机 围棋游戏,满足用户随时随地想玩就玩的...程序实现采用 Java 语言,便于游戏软件的 移植,游戏在 SonyEricsson 模拟器环境上...

基于Android的围棋游戏开发_王贺.pdf

(北京邮电大学软件学院,北京 100876)摘要:本文设计实现了基于 Android 平台的围棋游戏,分别利用 SDK、NDK 交叉编译工具开发了图形界面和围棋 引擎,然后利用 Java ...

Java程序设计报告.doc

网络五 子棋游戏是使用 Java 语言开发的一款游戏。...五子棋的规则为: (1)棋盘 采用像围棋盘一样的 ...9 附录源程序代码及简要说明: import java.awt.*;...