189 8069 5689

Java实现两人五子棋游戏(七)屏幕提示信息-创新互联

之前的两篇文章:Java实现两人五子棋游戏(二) 画出棋盘;Java实现两人五子棋游戏(三) 画出棋子;Java实现两人五子棋游戏(四) 落子动作的实现;Java实现两人五子棋游戏(六) 行棋方变换,可以点击查看。

为牟定等地区用户提供了全套网页设计制作服务,及牟定网站建设行业解决方案。主营业务为成都网站设计、成都网站建设、牟定网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

接下来我们要实现的功能是在有五连珠的时候,在屏幕上提示信息。直接在mousePressed函数的isWin部分使用showMessageDialog即可。

mousePressed函数代码如下:

@Override 
//当用户按下鼠标按钮时发生 
public void mousePressed(MouseEvent e) { 
 int point_x=e.getX(); 
 int point_y=e.getY(); 
 
 int imgWidth = boardImg.getHeight(this); 
 int imgHeight = boardImg.getWidth(this); 
 int FWidth = getWidth(); 
 int FHeight= getHeight(); 
 
 int x=(FWidth-imgWidth)/2; 
 int y=(FHeight-imgHeight)/2; 
 
 int span_x=imgWidth/ROWS; 
 int span_y=imgHeight/ROWS; 
 
 //System.out.println("press"); 
 int status_x = 0; 
 int status_y = 0; 
 if(point_x>=x && point_x<=x+imgWidth && point_y>=y && point_y <= y+imgHeight) 
 { 
 //System.out.println("合法"); 
 for(int i=0;i=x-chessman_width/2+1+i*span_x) 
  { 
  if(point_x<=x+chessman_width/2-1+i*span_x)//如果是width/2会在中间点出现两个匹配值 
  { 
   //System.out.println("point x "+i+" "+point_x+" "+(x-chessman_width/2+i*span_x)+" "+(x+chessman_width/2+i*span_x)); 
   status_x = i; 
  } 
  } 
 } 
 for(int i=0;i=y-chessman_width/2+1+i*span_y) 
  { 
  if(point_y <= y+chessman_width/2-1+i*span_y) 
  { 
   //System.out.println("point y "+i+" "+point_y+" "+(y-chessman_width/2+1+i*span_y)+" "+(y+chessman_width/2-1+i*span_y)); 
   status_y = i; 
  } 
  } 
 } 
  
 if(chessStatus[status_x][status_y]==null||chessStatus[status_x][status_y].getPlaced()==false) 
 { 
  Chessman chessman = new Chessman(chessColor, true); 
  chessStatus[status_x][status_y]=chessman; 
  System.out.println("chess color:"+chessColor); 
  if(chessColor==BLACK) 
  { 
  chessColor = WHITE; 
  }else { 
  chessColor = BLACK; 
  } 
  repaint(); 
  
  //如果胜出,给出提示信息 
  if(isWin(status_x, status_y, chessStatus)) 
  { 
  System.out.println("WIN!!!!!"); 
  String winner; 
  //如果下一子是白色的,那么此次为黑方 
  if(chessColor == WHITE) 
   winner = "黑方"; 
  else 
   winner = "白方"; 
  String mString = String.format("恭喜,%s WIN!!!!!", winner); 
  JOptionPane.showMessageDialog(this, mString); 
  } 
 } 
 } 
} 


本文标题:Java实现两人五子棋游戏(七)屏幕提示信息-创新互联
链接地址:http://cdxtjz.cn/article/coihej.html

其他资讯