1.连连看游戏设计与实现
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class lianliankan implements ActionListener { JFrame mainFrame; //主面板 Container thisContainer; JPanel centerPanel,southPanel,northPanel; //子面板 JButton diamondsButton[][] = new JButton[6][5];//游戏按钮数组 JButton exitButton,resetButton,newlyButton; //退出,重列,重新开始按钮 JLabel fractionLable=new JLabel("0"); //分数标签 JButton firstButton,secondButton; //分别记录两次被选中的按钮 int grid[][] = new int[8][7];//储存游戏按钮位置 static boolean pressInformation=false; //判断是否有按钮被选中 int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戏按钮的位置坐标 int i,j,k,n;//消除方法控制 public void init(){ mainFrame=new JFrame("JKJ连连看"); thisContainer = mainFrame.getContentPane(); thisContainer.setLayout(new BorderLayout()); centerPanel=new JPanel(); southPanel=new JPanel(); northPanel=new JPanel(); thisContainer.add(centerPanel,"Center"); thisContainer.add(southPanel,"South"); thisContainer.add(northPanel,"North"); centerPanel.setLayout(new GridLayout(6,5)); for(int cols = 0;cols < 6;cols++){ for(int rows = 0;rows < 5;rows++ ){ diamondsButton[cols][rows]=new JButton(String.valueOf(grid[cols+1][rows+1])); diamondsButton[cols][rows].addActionListener(this); centerPanel.add(diamondsButton[cols][rows]); } } exitButton=new JButton("退出"); exitButton.addActionListener(this); resetButton=new JButton("重列"); resetButton.addActionListener(this); newlyButton=new JButton("再来一局"); newlyButton.addActionListener(this); southPanel.add(exitButton); southPanel.add(resetButton); southPanel.add(newlyButton); fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText()))); northPanel.add(fractionLable); mainFrame.setBounds(280,100,500,450); mainFrame.setVisible(true); } public void randomBuild() { int randoms,cols,rows; for(int twins=1;twins<=15;twins++) { randoms=(int)(Math.random()*25+1); for(int alike=1;alike<=2;alike++) { cols=(int)(Math.random()*6+1); rows=(int)(Math.random()*5+1); while(grid[cols][rows]!=0) { cols=(int)(Math.random()*6+1); rows=(int)(Math.random()*5+1); } this.grid[cols][rows]=randoms; } } } public void fraction(){ fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText())+100)); } public void reload() { int save[] = new int[30]; int n=0,cols,rows; int grid[][]= new int[8][7]; for(int i=0;i<=6;i++) { for(int j=0;j<=5;j++) { if(this.grid[i][j]!=0) { save[n]=this.grid[i][j]; n++; } } } n=n-1; this.grid=grid; while(n>=0) { cols=(int)(Math.random()*6+1); rows=(int)(Math.random()*5+1); while(grid[cols][rows]!=0) { cols=(int)(Math.random()*6+1); rows=(int)(Math.random()*5+1); } this.grid[cols][rows]=save[n]; n--; } mainFrame.setVisible(false); pressInformation=false; //这里一定要将按钮点击信息归为初始 init(); for(int i = 0;i < 6;i++){ for(int j = 0;j < 5;j++ ){ if(grid[i+1][j+1]==0) diamondsButton[i][j].setVisible(false); } } } public void estimateEven(int placeX,int placeY,JButton bz) { if(pressInformation==false) { x=placeX; y=placeY; secondMsg=grid[x][y]; secondButton=bz; pressInformation=true; } else { x0=x; y0=y; fristMsg=secondMsg; firstButton=secondButton; x=placeX; y=placeY; secondMsg=grid[x][y]; secondButton=bz; if(fristMsg==secondMsg && secondButton!=firstButton){ xiao(); } } } public void xiao() { //相同的情况下能不能消去。
仔细分析,不一条条注释 if((x0==x &&(y0==y+1||y0==y-1)) || ((x0==x+1||x0==x-1)&&(y0==y))){ //判断是否相邻 remove(); } else{ for (j=0;j<7;j++ ) { if (grid[x0][j]==0){ //判断第一个按钮同行哪个按钮为空 if (y>j) { //如果第二个按钮的Y坐标大于空按钮的Y坐标说明第一按钮在第二按钮左边 for (i=y-1;i>=j;i-- ){ //判断第二按钮左侧直到第一按钮中间有没有按钮 if (grid[x][i]!=0) { k=0; break; } else{ k=1; } //K=1说明通过了第一次验证 } if (k==1) { linePassOne(); } } if (y OO:348414338 模具类毕业设计1毕业论文 箱体锁扣注射模具设计(内含两份) 2毕业论文 利用Pro/e进行电话机机壳模具设计3毕业设计 冲压工艺及模具设计 4毕业设计 冲裁垫片模具的设计5毕业论文 旋转体的冲压工艺与模具设计 6毕业设计论文(说明书) 封闭板成形模及冲压工艺 7毕业论文 塑料盒模具 8毕业设计 圆球模具设计与制造9毕业设计 罩壳设计说明书 10毕业设计 压铸模设计 11毕业设计 带式输送机的传动装置 12毕业设计 手柄冲孔、落料级进模设计与制造 13毕业设计 硅胶(RB)手机按键模具分析与制作 14毕业设计 注射器盖毕业课程设计说明书 15毕业设计 离合器冲模设计 16毕业设计 托板零件冲模设计 17冲压摸具毕业设计 设计该零件的冲裁模 18 基于PROE的模具设计(附PROE零件图,操作录像) 19毕业论文 盖冒垫片模具设计说明书 20毕业设计 发动机支承限位件的模具设计与制造 21毕业设计论文 塑料模具设计(注射器盖) 22毕业设计 喷墨打印机部件模具设计 23毕业论文 手柄限位杆盒冲压件设计 24毕业设计 冰箱调温按钮塑模设计说明书 25毕业论文 瓶盖拉深模的设计 26毕业论文 箱体锁扣注射模具设计(内含两份) 27毕业论文 密封垫片冲裁模设计 28毕业论文 塑料闸瓦钢背弯曲模设计 29毕业论文 22型车门垫板冲裁模设计与制造 30毕业设计 HFJ6351D型汽车工具箱盖单型腔注塑模设计 31毕业设计论文封闭板成形模及冲压工艺 32毕业设计 “远舰”轿车双摆臂悬架的设计及产品建模 33毕业设计说明书 电池板铝边框冲孔模的设计 34毕业设计 油封骨架冲压模具设计 35水管联接压盖模具设计毕业设计 36毕业设计 外缘翻边圆孔板的塑料模设计 37宁波工程学院机械工程系毕业设计 塑料模 38塑模具设计 39XX轻工职业技术学院毕业设计 管座及其加工模具的设计 40机械工程系模具专业2006届毕业设计说明书:横排地漏封水筒注塑模 机械,机电类毕业设计1毕业设计 可伸缩带式输送机结构设计 2毕业设计 AWC机架现场扩孔机设计3毕业论文复合化肥混合比例装置及PLC控制系统设计 4机械设计课程设计 带式输送机说明书和总装图4毕业设计 冲压废料自动输送装置 5专用机床PLC控制系统的设计 6课程设计 带式输送机传动装置 7毕业论文 桥式起重机副起升机构设计 8毕业论文 两齿辊破碎机设计 9 63CY14-1B轴向柱塞泵改进设计(共32页,19000字) 10毕业设计 连杆孔研磨装置设计 11毕业设计 旁承上平面与下心盘上平面垂直距离检测装置的设计 12.. 机械设计课程设计 带式运输机传动装置设计 13皮带式输送机传动装置的一级圆柱齿轮减速器 14毕业设计(论文) 立轴式破碎机设计 15毕业设计(论文) C6136型经济型数控改造(横向) 16高空作业车工作臂结构设计及有限元分析 17 2007届毕业生毕业设计 机用虎钳设计 18毕业设计无轴承电机的结构设计 19毕业设计 平面关节型机械手设计 20毕业设计 三自由度圆柱坐标型工业机器人 21毕业设计XKA5032A/C数控立式升降台铣床自动换刀设计 22毕业设计 四通管接头的设计 23课程设计:带式运输机上的传动及减速装置 24毕业设计(论文) 行星减速器设计三维造型虚拟设计分析 25毕业设计论文 关节型机器人腕部结构设计 26本科生毕业设计全套资料 Z32K型摇臂钻床变速箱的改进设计/ 27毕业设计 EQY-112-90 汽车变速箱后面孔系钻削组合机床设计 28毕业设计 D180柴油机12孔攻丝机床及夹具设计 29毕业设计 C616型普通车床改造为经济型数控车床 30毕业设计(论文)说明书 中单链型刮板输送机设计 液压类毕业设计1毕业设计 ZFS1600/12/26型液压支架掩护梁设计2毕业设计 液压拉力器 3毕业设计 液压台虎钳设计 4毕业设计论文 双活塞液压浆体泵液力缸设计 5毕业设计 GKZ高空作业车液压和电气控制系统设计 数控加工类毕业设计1课程设计 设计低速级斜齿轮零件的机械加工工艺规程 2毕业设计 普通车床经济型数控改造 3毕业论文 钩尾框夹具设计(镗φ92孔的两道工序的专用夹具) 。 4 机械制造工艺学课程设计 设计“拨叉”零件的机械加工工艺规程及工艺装备(年产量5000件)5课程设计 四工位专用机床传动机构设计 6课程设计说明书 设计“推动架”零件的机械加工工艺及工艺设备 7机械制造技术基础课程设计 制定CA6140车床法兰盘的加工工艺,设计钻4*φ9mm孔的钻床夹具 8械制造技术基础课程设计 设计“CA6140车床拨叉”零件的机械加工工艺及工艺设备 9毕业设计 轴类零件设计 10毕业设计 壳体零件机械加工工艺规程制订及第工序工艺装备设计 11毕业设计 单拐曲轴零件机械加工规程设计说明书 12机械制造课程设计 机床传动齿轮的工艺规程设计(大批量) 13课程设计 轴零件的机械加工工艺规程制定 14毕业论文 开放式CNC(Computer Numerical Control)系统设计15毕业设计 单拐曲轴工艺流程 16毕业设计 壳体机械加工工艺规程 17毕业设计 连杆机械加工工艺规程 18毕业设计(论文) 子程序在冲孔模生产中的运用——编制数控加工(1#-6#)标模点孔的程序 19毕业设计 XKA5032A/C数控立式升降台铣床自动换刀装置的设计 20机械制造技术基础课程设计 设计“减速器传动轴”零件的机械加工。 转载请注明出处众文网 » 基于c连连看毕业论文(连连看游戏设计与实现)2.一级圆柱齿轮减速器毕业设计 范文