myjframe.java
package chi1.jframe;
import java.awt.color;
import java.awt.font;
import java.awt.graphics;
import java.awt.toolkit;
import java.awt.event.mouseevent;
import java.awt.event.mouselistener;
import java.awt.image.bufferedimage;
import java.io.file;
import java.io.ioexception;
import javax.imageio.imageio;
import javax.swing.jframe;
import javax.swing.joptionpane;
public class myjframe extends jframe implements mouselistener {
private static final long serialversionuid = -46847020668994298l;
bufferedimage buff = null; // 声明对象,为获取图片
int x , y ;
// 保存所有的点多的坐标
int[][] allchess = new int[15][15] ; // 用一个二维数组保存黑白子信息。
string show1 = ; // 默认黑方下棋
//默认下黑子 , 判断下什么棋子。bool=true 下黑子 ; bool=false 下白子
// boolean bool = true ;
// 判断是否赢了比赛, 如果赢了比赛, 就不能再继续下棋了,
boolean win =true ;
public myjframe(){
int width = toolkit.getdefaulttoolkit().getscreensize().width ;
int height = toolkit.getdefaulttoolkit().getscreensize().height ;
this.settitle(五子棋);
this.setresizable(false);
this.setsize(500,550 );
this.setdefaultcloseoperation(jframe.exit_on_close);
this.setlocation((width-500)/2 , (height-550)/2);
this.repaint();
this.addmouselistener(this);
try {
buff = imageio.read(new file(e:/wzq.jpg ));
} catch (ioexception e) {
// todo auto-generated catch block
e.printstacktrace();
}
this.setvisible(true);
};
// boolean rekai = true ;
int select = 0 ;
boolean bool2=true ;
@override
public void mouseclicked(mouseevent e) {
// todo auto-generated method stub
// system.out.println(e.getx());
// system.out.println(e.gety());
}
@override
public void mousepressed(mouseevent e) {
boolean bool = true ;
for(int x = 0 ; x<15 ; x++){
for(int y = 0 ; y =65&&x=70&&y<=430){
x = (x-60)/25; //得到距离附近的交叉点x轴坐标
y = (y-70)/25;
if(allchess[x][y]==0){
if(bool==true){ //默认下黑棋子先
allchess[x][y] =1;
show1 = 白方下棋; // 提示下步棋下白色
bool = false ; // 修改标记, 下步棋应该由白方下
select = 1 ;
}else{
allchess[x][y]= 2 ;
show1 = 黑方下棋;
bool = true;
select = 2 ;
}
this.repaint();
int zong = 0 ;
for(int i = 0 ; i < 15 ; i++ ){
for(int k = 0 ; k =427&&e.getx()193&&e.gety()=301&&e.getx()466&&e.gety()<532){ // 重新开始
joptionpane.showmessagedialog(this, 重新游戏) ;
for(int i = 0 ; i < 15 ; i++ ){
for(int k = 0 ; k =425&&e.getx()101&&e.gety()<140){ // 设置设计
for(int x = 0 ; x<15 ; x++){
for(int y = 0 ; y =426&&e.getx()382&&e.gety()=433&&e.getx()289&&e.gety()<334){ //游戏说明
joptionpane.showmessagedialog(this, 五子棋游戏规则: 谁先把5颗棋子相连,谁
就是赢家) ;
}
}
public void paint(graphics g){
bufferedimage b1 = new bufferedimage(500 , 550 ,bufferedimage.type_int_argb);
// 定义一个新的缓冲图片
graphics g2 = b1.creategraphics();
g2.drawimage(buff, 0, 20, this); // 将图片显示在窗体上
g2.setcolor(color.black); // 设置画笔颜色为黑色
g2.filloval(135, 144, 6, 6);
g2.filloval(334, 144, 6, 6); // 画几个定点
g2.filloval(138, 342, 6, 6);
g2.filloval(334, 342, 6, 6);
g2.filloval(236, 242, 6, 6);
g2.setfont(new font(黑体 , font.bold , 20));
g2.drawstring(游戏信息:+show1, 83, 49); //显示当前由哪一方下棋
g2.drawstring(黑方:, 65, 473);
g2.drawstring(白方:, 62, 518);
for(int i = 0 ; i =5){
zhong = true ;
}
return zhong ;
}
public boolean mycheck3() { // 判断右斜向是否有五子相连
int count = 1;
boolean zhong = false ;
int color = allchess[x][y] ;
// todo auto-generated method stub
int i = 1 ;
while((x+i)=0&&color == allchess[x+i][y-i]){
i++ ;
count++ ;
}
i = 1 ;
while((x-i)>=0&&(y+i)=5){
zhong = true ;
}
return zhong ;
}
public boolean mycheck4() { // 判左斜向是否有五子相连
int count = 1;
boolean zhong = false ;
int color = allchess[x][y] ;
// todo auto-generated method stub
int i = 1 ;
while((x-i)>=0&&(y-i)>=0&&color == allchess[x-i][y-i]){
i++ ;
count++ ;
}
i = 1 ;
while((x+i)<=14&&(y+i)=5){
zhong = true ;
}
return zhong ;
}
@override
public void mousereleased(mouseevent e) {
// todo auto-generated method stub
}
@override
public void mouseentered(mouseevent e) {
// todo auto-generated method stub
}
@override
public void mouseexited(mouseevent e) {
// todo auto-generated method stub
}
}
text01.java
package chi1.text;
import chi1.jframe.myjframe;
public class text01 {
/**
* @param args
*/
public static void main(string[] args) {
// todo auto-generated method stub
myjframe jf = new myjframe() ;
// string b1 = joptionpane.showinputdialog(请输入你的名字:) ;
//int b = joptionpane.showconfirmdialog(jf, 我的信息: + b1);
}
}