Java五子棋课程设计报告程序.docx

上传人:小飞机 文档编号:3061305 上传时间:2023-03-10 格式:DOCX 页数:6 大小:38.10KB
返回 下载 相关 举报
Java五子棋课程设计报告程序.docx_第1页
第1页 / 共6页
Java五子棋课程设计报告程序.docx_第2页
第2页 / 共6页
Java五子棋课程设计报告程序.docx_第3页
第3页 / 共6页
Java五子棋课程设计报告程序.docx_第4页
第4页 / 共6页
Java五子棋课程设计报告程序.docx_第5页
第5页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《Java五子棋课程设计报告程序.docx》由会员分享,可在线阅读,更多相关《Java五子棋课程设计报告程序.docx(6页珍藏版)》请在三一办公上搜索。

1、Java五子棋课程设计报告程序-EXCE.JAVA- importjavax.swing.*; importjava.awt.*; importjava.awt.geom.*; public class Exce public static void main(String args) JFrame win=new JFrame; JMenuBarmenubar; JMenu menu; JMenuItem item2,item1,item3; menubar=new JMenuBar; menu=new JMenu(菜单); item1=new JMenuItem(开始); item2=ne

2、w JMenuItem(重新开始); item3=new JMenuItem(结束); menu.add(item1); menu.add(item2); menu.add(item3); menubar.add(menu); win.setJMenuBar(menubar); win.setTitle(五子棋); win.setSize(700,750); /win.setBackground(Color.orange); win.add(new Wuziqi); win.setVisible(true); win.setResizable(false); win.setDefaultClo

3、seOperation(JFrame.EXIT_ON_CLOSE); - WUZHIQI.JAVA- importjavax.swing.*; importjava.awt.*; importjava.awt.geom.*; public class Wuziqi extends JPanel /棋盘距离边界的距离 public static int x=50, y=50; /棋子的多少及格子大小 public static int n=16, fangge=40,qizi=40; public static int s=new intnn; /初始数组,数组全赋为0 public void

4、chushi for(inti=0;in;i+) for(int j=0;jn;j+) sij=0; /绘制棋盘 public void paint(Graphics g) /调用父类的方法,清空棋盘 super.paint(g); WuziqiListener listen= new WuziqiListener; listen.setWuziqiQP(this); /添加鼠标事件 listen.setWuziqiG(g); this.addMouseListener(listen); this.addMouseListener(listen); Graphics2D g_2d=(Graph

5、ics2D)g; for(inti=0;in;i+) Line2D line=new Line2D.Double(x+i*fangge,y,x+i*fangge,y+(n-1)*fangge); g_2d.draw(line); for(inti=0;in;i+) Line2D line=new Line2D.Double(x,y+i*fangge,x+(n-1)*fangge,y+i*fangge); g_2d.draw(line); /画棋子 for(inti=0;in;i+) for(int j=0;j=0&i5;i+) if(t=sx-iy) count+; else break; i

6、f(count=5) / return true; for(i=0,count=0;x+i16&i=0&i5;i+) if(t=sxy-i) count+; else break; if(count=5) return true; for(i=0,count=0;y+i16&i=0&y-i=0&i5;i+) if(t=sx-iy-i) count+; else break; if(count=5) return true; for(i=0,count=0;x+i16&y+i16&i5;i+) if(t=sx+iy+i) count+; else break; if(count=5) retur

7、n true; /判断右上方向 for(i=0,count=0;x+i=0&i0&y+i16&i=0&x1=0&y1Wuziqi.n&Wuziqi.sx1y1=0) /wzq.repaint; /wzq.paint(g); /棋子放在棋盘上后,数组做相应标示 Wuziqi.sx1y1 = t; /调用iswin方法,来判断输赢 if(wzq.isWin(x1,y1,t)&t=1) /弹出提示对话框 int n=JOptionPane.showConfirmDialog(null,黑棋赢了,再来一盘吧!, 确认对话框,JOptionPane.YES_NO_CANCEL_OPTION); if(n

8、=JOptionPane.YES_OPTION) wzq.chushi; Wuziqi.sx1y1=-2; wzq.repaint; else if(n=JOptionPane.NO_OPTION) System.exit(0); else if(wzq.isWin(x1,y1,t)&t=-1) int n=JOptionPane.showConfirmDialog(null,白棋赢了,再来一盘吧!, 确认对话框,JOptionPane.YES_NO_CANCEL_OPTION); if(n=JOptionPane.YES_OPTION) wzq.chushi; Wuziqi.sx1y1=-2; wzq.repaint; else if(n=JOptionPane.NO_OPTION) System.exit(0); else /重新棋盘 wzq.repaint; t = -t; public void mouseClicked(MouseEvent e) public void mouseReleased(MouseEvent e) public void mouseEntered(MouseEvent e) public void mouseExited(MouseEvent e)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号