棋盘╳围棋棋盘五子棋java语言课程设计报告

棋盘密码  时间:2021-02-14  阅读:()

╳围棋棋盘五子棋JAVA语言课程设计报告

《Java语言程序设计》课程设计报告

学 院: 信息科学技术学院

班 级: 软件技术2班

姓 名 王更新

学 号: 1 090505

指导教师 郭韶升

课设时间: 20 4—0—17至2  4—03-26

二O一四年三月二十六日

目 录

一、设计要求…………………………………………。 . . .

二、设计步骤………………………………………….。  .2

2. 程序流程图………………………….………….  .2

╳围棋棋盘五子棋JAVA语言课程设计报告

2。 程序的功能分配……………………….………。 . .3

三、设计正文………………………………………….。  。 

3 1创建棋盘类………………………………………。 6

3。 2判断输赢功能实现………………………………。 9

3 测试结果………………………………………。  . .。 9

四、心得体会………………………………………….  .12

五、参考文献………………………………………… 。  1 

附录(源代码)……………………………………… 13

一、课程设计要求

设计一个 5╳15围棋棋盘 由两玩家交替进行对战,并可以实现以下功能

1选择落子的先后顺序

2.重置棋盘

3。刷新重新开始

4.退出提示

并且规定退出者判为负但退出过程中要有提示。 以防不小心点错了.最后判断某一方是否为五子连珠。

实现一个简单的多用户五子棋的游戏程序包括如下两个界面

(1选择对弈桌执黑、执白 .

2在游戏界面有开始,退出游戏未结束、点退出自动判负

二、设计步骤

╳围棋棋盘五子棋JAVA语言课程设计报告

2.1程序流程图

 .程序的功能分配

 。 棋盘的绘制

ub ic vo  dr_ian Graphics G /画棋盘 515{.setol  C o l  .lihtGry ;

G. ill3Rec   10 10 30 ,3 0,t e);

G.stCoor o   .b   )

fo( n =1 i 〈1   ++){

  drie  0 20i 300,20i)

 。 d wie  0i 2  20i 00



b。 添加按钮

uttn 1=ne wutto n  开始 );

ttn b=ne utton( 重置游戏” )

Lael llWin=e abe  ””)

Cekox  bH[]ne hecbx    ;

Bu o e x  t =nB utto n  "退出” )

pblic vid in t   {ckbHB0]= C hc o x(”执白” cg,   l  e ;  b 1 =ew Chck x  "执黑” kB false); kHB2 =ewhekbox("观看  ckgHB alse ;

╳围棋棋盘五子棋JAVA语言课程设计报告

c.鼠标棋子的触发事件publ  c v d m   Cli ed(ousEv t e 

 G pi s g=etGrah cs   ;

it x1,1

x1= .g  )y=e getY);

i e.et(<2  |e。 get 〉 300  |e。 g Y) 〈20    .ge(3 0 

 re tur n;

 

if(1010) 

x1+=  

}

if(1%20  ) {

y10

}

x1=x1/ 20;

y=y1/20*20

  Qi  x  y  ;

=(-1)

}

 。 按钮的触发事件pbl  c vi   tionPer rmed Ationent   

Grapics g= tG  h cs )

  f   。 g   uce   =b1) 

Gme_start( ;

}

e   e 

 Gme_re(



if     Su e )==exist){

G ame_e )

lblWn.se Tex Get_q zi_clo co loQ izi)+输了 ")

 ntG ae_trt= 

e。 判断落子的位置及画出相应的黑白棋子pub ic vod  e zi(int  int y)/落子

if(intGa me  r t==0 /判断游戏未开始

 retur n;



╳围棋棋盘五子棋JAVA语言课程设计报告if( nGame yx/20 y/20 =0 {

re ur;



Graph cs g=etG  hics  

    o lor_Q izi=1)//判断黑子还是白子

g.se Colr olr。 b ack

 c  r_i =0;

 }

  s 

 g.  etC or Co lo .wh  e);

 clor_iz ;



g.f  Oval(x10 y10,2  20 ;

intameBody x/2    0colori i+1;

f. 判断胜负if m_win1( 20 y/2 )) /判断输赢1 

 lb lWin.  e te xt  tiz_o lor co o_izi赢了!  );

 itG a me_ a rt 

 

i (mew _ (x/  ,/0)) /判断输赢2 

l Wn。 setText(et   i_colr  olr_Q izi +”赢了!” ; inta m_tr = ;



 if Gm_n (/  ,y/20)) /判断输赢3{

 blWi.stext G t_iz_c o  oo r_Q i i)”赢了!” ntGa m_    t=0



i (am_win4 x/2  y/2  ) /判断输赢4{

 lbli。 s Text G _qizi_olr co rQ zi +赢了” ; nta me_S tar t=0;

 

}

╳围棋棋盘五子棋JAVA语言课程设计报告

三、设计正文

3。 1创建棋盘类

Pblic c  a s Wcess ex n  plet i  ments ActionLis eer,M sListe nrMuseot  nLis   er Ite mi  te ner{in c o lr_izi= ; 旗子的颜色标识0 白子1 :黑子

int itGme_S tart=0;/游戏开始标志0未开始1游戏中

  t ntGameody [new it[1   1   ; /设置棋盘棋子状态int =-1;

But o b 1=ne wtto n( 开始”  

But    b 2=neB ut  n( 重置游戏" ;

Lael l in=newabel   ” ;

Chckbox ckbB[]new Ceckbox[  ;

But  n e xis t ne Btto n("退出" ;

Ch koxGrou ckg=nw ChckoxGrup();

N  h Cliet chan Netht  int   

p l  c od init() 

s eLa yo ut u l 

adu eLi   ene   hi   ;

d(1 

b1.set nds  30 50 80,3  );

╳围棋棋盘五子棋JAVA语言课程设计报告

  。 addActioL ste ne r thi   

add(b  ;

b2 studs(30 90 80 0 ;

2.addAc   nLis  e ne (th   

ckHB  ]= w Chckbox ”执白" k,f l  ) kB[ ]。 stBond 32  2 ,6 ,30 

ckbH 1nw Ch ckbo  执黑” ,ckgHB, al  e)

   B1]。 seBuds( 0,20 60 3   ;

ckbH 2 =ew C cbox  "观看 ,cgB fa  e 

 a (ckbB[ ] 

  d(cb 1  

 d cb HB[2  ;

 c B[0]。 a Ite mL st er(  is)

ckbHB[1]。 add Ite mListn r(this);

add(lb lW in ;

lblWin。 stBou   330,1 0,8 ,30 

 blin.seta gou  Clr。  d 

  lWn。   Tet  胜利者 ”  ; /没有显示?

ckbHB2 。 s Bo s 440 20 60, 30 ;

  d(exist);

exist stBounds(3  ,  30 80,   

xist ad tionL  tenr(ti   ;

/ ad(cht) chat.se  ouds(2  50 300 3 0);cht。 f e   cht。 setisibl tre ;

Gam_s  artc s( 

stie(50,6  );

 s Visibl (tru  ;

}

ulic oid i  emtateChang (ItemEvent e {

 i (cbHB   。 ge tSat   ) //选择黑子还是白子

clr_izi0

e  se{

 co or_Q zi=1



pub   voi o  ePr ssed Mo  Ev t    ulic voimouseCl  cked ousEvnt e 

Gr  ic  eGrap h  s   

int x1 1

x1= 。 ge    

y1=e。 ge    

  f (e。 et )<2 |   。 ge( 〉 300| | e。 geY)<2 |  e。

╳围棋棋盘五子棋JAVA语言课程设计报告get( 〉 30  

 e un

 

if x20>10) 

 1+10

 

 if y20〉    

 y1+=10;

}

x1=x1/0*20

y=y 2020

  t_Q izi(x1  y  ;

= 1 ;

}

pbl  c void  t onPrfod A tioEvent e {

 Gr hi s g=gtGraphics();

if(e。 gtSorce   =b1 {

Game_s  at()



el  e 

 a_r( ;



 if(e.ge  ouc   ==xist 

Gamr e( ;

lblin.  etxt(G _i ioor(clorQ i   +"输了 ”  itGme_Sart= 



p l  c void mousentered MousEvent e }

publ   void mosex t  Mou eEven e  

pu   c vod mosR lease MoseEvnt e  

ublic void mouseraged(u eEv   e {

pu  ic voi mous    usevente {

ubl  c voidp  t(Grah c  ) 

daw_qip a g 

╳围棋棋盘五子棋JAVA语言课程设计报告

 。 判断输赢功能实现if (Gamwin_1 x/2  y/20) { /判断输赢1

 lb ln.setx et_q  i_ lo(cloQ zi+"赢了 ”  ; in tGe_ at0

if(e_i_ /0,y/2   { //判断输赢2

 lb li。 s  tTe  (Ge _q  clo   o l Q izi)+"赢了   ;

 ntGme_Sa =0;

}

  f (Gme_in_ (x20 y20 ) /判断输赢3 

 bl 。 setTxt(et_qi _coor co lr_i i +”赢了  )int Ga me_S tar t= 

if ame_win_4 x/0 y/   ) /判断输赢4 

  lW in.se Te xt etq i iclo(co lor_  i +"赢了!”   inGae_    =0

}

 。 3测试结果a。 进入游戏界面

NameCheap优惠活动 新注册域名38元

今天上午有网友在群里聊到是不是有新注册域名的海外域名商家的优惠活动。如果我们并非一定要在国外注册域名的话,最近年中促销期间,国内的服务商优惠力度还是比较大的,以前我们可能较多选择海外域名商家注册域名在于海外商家便宜,如今这几年国内的商家价格也不贵的。比如在前一段时间有分享到几个商家的年中活动:1、DNSPOD域名欢购活动 - 提供域名抢购活动、DNS解析折扣、SSL证书活动2、难得再次关注新网商家...

Megalayer(159元 )年付CN2优化带宽VPS

Megalayer 商家我们还算是比较熟悉的,商家主要业务方向是CN2优化带宽、国际BGP和全向带宽的独立服务器和站群服务器,且后来也有增加云服务器(VPS主机)业务。这次中秋节促销活动期间,有发布促销活动,这次活动力度认为还是比较大的,有提供香港、美国、菲律宾的年付VPS主机,CN2优化方案线路的低至年付159元。这次活动截止到10月30日,如果我们有需要的话可以选择。第一、特价限量年付VPS主...

美国多IP站群VPS商家选择考虑因素和可选商家推荐

如今我们很多朋友做网站都比较多的采用站群模式,但是用站群模式我们很多人都知道要拆分到不同IP段。比如我们会选择不同的服务商,不同的机房,至少和我们每个服务器的IP地址差异化。于是,我们很多朋友会选择美国多IP站群VPS商家的产品。美国站群VPS主机商和我们普通的云服务器、VPS还是有区别的,比如站群服务器的IP分布情况,配置技术难度,以及我们成本是比普通的高,商家选择要靠谱的。我们在选择美国多IP...

棋盘密码为你推荐
pwPW考试是指什么arm开发板新手入门应如何选择 ARM 开发板?申请证书手机申请证书开机滚动条如何关闭开机滚动条?奇虎论坛奇虎问答是什么lockdowndios8.1能用gpp3to2吗?型号A1429lockdowndiphone4s 完美越狱5.1.1时出现Could not connect to lockdownd。求救啊!!商标注册查询官网全国商标注册查询在哪里查呀?网络广告投放怎样在网络上进行广告的投放?电子商务网站模板电子商务网站策划书
n点虚拟主机管理系统 stablehost 256m内存 缓存服务器 好看的桌面背景图片 骨干网络 国外代理服务器软件 中国电信测速网 太原网通测速平台 银盘服务 腾讯总部在哪 百度云空间 xshell5注册码 alexa世界排名 godaddy中文 美国达拉斯 日本小学生 招聘瓦工 ddos攻击小组 次世代主机 更多