资源描述:
《java课程设计五子棋》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、工作原理图2.2功能的规划1.建立一个棋盘类,绘制棋盘的样式,在棋盘面板上添加各种按钮及相应胡触发事件。同时注意面板的设计,使面板设计的尽量胡的合理美观。a.棋盘的绘制publicvoiddraw_qipan(GraphicsG)//画棋盘15*15{G.setColor(Color.lightGray);G.fill3DRect(10,10,300,300,true);G.setColor(Color.black);37for(inti=1;i<16;i++){G.drawLine(20,20*i,300
2、,20*i);G.drawLine(20*i,20,20*i,300);}}b.添加按钮与按钮胡规划Buttonb1=newButton("开始");Buttonb2=newButton("重置游戏");LabellblWin=newLabel("");CheckboxckbHB[]=newCheckbox[3];Buttonexist=newButton("退出");publicvoidinit(){ckbHB[0]=newCheckbox("执白",ckgHB,false);ckbHB[1]=newCh
3、eckbox("执黑",ckgHB,false);ckbHB[2]=newCheckbox("观看",ckgHB,false);}C.鼠标棋子胡相应触发事件publicvoidmouseClicked(MouseEvente){Graphicsg=getGraphics();intx1,y1;x1=e.getX();y1=e.getY();if(e.getX()<20
4、
5、e.getX()>300
6、
7、e.getY()<20
8、
9、e.getY()>300){return;}if(x1%20>10){x1+=10;
10、}if(y1%20>10){y1+=10;}x1=x1/20*20;y1=y1/20*20;set_Qizi(x1,y1);37m*=(-1);}d.按钮的触发事件publicvoidactionPerformed(ActionEvente){Graphicsg=getGraphics();if(e.getSource()==b1){Game_start();}else{Game_re();}if(e.getSource()==exist){Game_re();lblWin.setText(Get_qizi
11、_color(color_Qizi)+"输了!");intGame_Start=0;}2.编写一个功能判断落子的位置及画出相应的黑白棋子publicvoidset_Qizi(intx,inty)//落子{if(intGame_Start==0)//判断游戏未开始{return;}if(intGame_Body[x/20][y/20]!=0){return;}Graphicsg=getGraphics();if(color_Qizi==1)//判断黑子还是白子{g.setColor(Color.black);
12、37color_Qizi=0;}else{g.setColor(Color.white);color_Qizi=1;}g.fillOval(x-10,y-10,20,20);intGame_Body[x/20][y/20]=color_Qizi+1;}3.判断胜负if(Game_win_1(x/20,y/20))//判断输赢1{lblWin.setText(Get_qizi_color(color_Qizi)+"赢了!");intGame_Start=0;}if(Game_win_2(x/20,y/20))
13、//判断输赢2{lblWin.setText(Get_qizi_color(color_Qizi)+"赢了!");intGame_Start=0;}if(Game_win_3(x/20,y/20))//判断输赢3{lblWin.setText(Get_qizi_color(color_Qizi)+"赢了!");intGame_Start=0;}if(Game_win_4(x/20,y/20))//判断输赢4{lblWin.setText(Get_qizi_color(color_Qizi)+"赢了!");i
14、ntGame_Start=0;}}4.添加用户聊天功能37NetchatClientchat=newNetchatClient();chat.frame();chat.setVisible(true);三具体实现3.1创建棋盘类PublicclassWcyChessextendsAppletimplementsActionListener,MouseListener,MouseMotionListener,Ite