java实现拼图小游戏
一个简单的拼图小游戏,供大家参考,具体内容如下
1.首先设计视图面板。
2.添加所需要的图片按钮。
3.最主要的是设计监听事件,添加图片的监听按钮,设定移动空白图片周围的按钮。
4.判断是否成功。
packagesxy; importjava.awt.Choice; importjava.awt.Image; importjava.awt.Toolkit; importjava.awt.event.MouseAdapter; importjava.awt.event.MouseEvent; importjava.awt.image.CropImageFilter; importjava.awt.image.FilteredImageSource; importjava.awt.image.ImageFilter; importjava.util.Random; importjavax.swing.Icon; importjavax.swing.ImageIcon; importjavax.swing.JButton; importjavax.swing.JFrame; importjavax.swing.JLabel; importjavax.swing.JOptionPane; importjavax.swing.JPanel; publicclassPintuGame{ publicstaticvoidmain(Stringargs[]){ newPintuFrame().StartFrame(); } } classPintuFrameextendsJFrame{ privatestaticfinallongserialVersionUID=1L; //等级设置 privatestaticintlevel=3; //图片索引 privatestaticintindex=0; //图片数量 privatestaticintpicCount=2; //开始时间 privatelongstartTime; //初始化小方块 privateJButton[]buttons; //初始化空方块 privateJPanelemptyPanel=newJPanel(); //初始化监听类 privatePintuListenerlistener=newPintuListener(); //初始化Panel privateJPanelpanel=newJPanel(null); //图片预览 privateJLabellabel; privateString[]imgpath=newString[picCount]; //选图时的图片路径 Stringpath; publicPintuFrame(){ for(inti=0;i"); JLabelselLevel=newJLabel("LV:"); label=newJLabel(getIcon());//根据图标设置标签 finalChoicechoice=newChoice();//创建选择器 choice.add("--初级--");//添加列表项 choice.add("--中级--"); choice.add("--高级--"); selLevel.setBounds(5,0,20,20);//设置坐标 choice.setBounds(28,0,65,20); start.setBounds(93,0,85,20); left.setBounds(178,0,61,20); right.setBounds(239,0,61,20); label.setBounds(0,22,300,300);//设置标签的方位 panel.add(selLevel); panel.add(choice); panel.add(start); panel.add(left); panel.add(right); panel.add(label); panel.repaint(); add(panel); setTitle("拼图游戏"); setBounds(450,130,300,322); setResizable(false); //添加关闭按钮 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setVisible(true); //监听等级选择 start.addMouseListener(newMouseAdapter(){ @Override publicvoidmousePressed(MouseEvente){ level=choice.getSelectedIndex()+3; launchFrame(); } }); //监听选图按钮<- left.addMouseListener(newMouseAdapter(){ @Override publicvoidmousePressed(MouseEvente){ if(index==0){ index=picCount-1; path=imgpath[index]; }else{ path=imgpath[--index]; } panel.remove(label); label=newJLabel(getIcon()); label.setBounds(0,22,300,300); panel.add(label); panel.repaint(); } }); //监听选图按钮-> right.addMouseListener(newMouseAdapter(){ @Override publicvoidmousePressed(MouseEvente){ if(index==picCount-1){ index=0; path=imgpath[index]; }else{ path=imgpath[++index]; } panel.remove(label); label=newJLabel(getIcon()); label.setBounds(0,22,300,300); panel.add(label); panel.repaint(); } }); } /** *拼图窗体加载 */ publicvoidlaunchFrame(){ startTime=System.currentTimeMillis(); panel.removeAll(); buttons=newJButton[level*level]; //设置图标组 Icon[]icon=newPintuFrame().creatIcon(path); //小方块索引 intindex=0; //小方块坐标 intx=0,y=0; //设置小方块位置,图标,监听 for(inti=0;i 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。