Java语言实现拼图游戏源代码_第1页
Java语言实现拼图游戏源代码_第2页
Java语言实现拼图游戏源代码_第3页
Java语言实现拼图游戏源代码_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java语言实现拼图游戏源代码/* JAVA小游戏拼图 我做的第一个小游戏* Cell类是继承的按钮类,并加上相应图形,形成方格*MyCanvas是一个面板,加载Cell类的对象(方格),是这三个类中的核心*/import java.awt.Rectangle;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.Icon;import javax.swing.ImageIcon;import javax.swing.JOptionPane;import javax.swi

2、ng.JPanel;import java.awt.BorderLayout;import java.awt.Button;import java.awt.Choice;import java.awt.Color;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.Icon;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swin

3、g.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.Icon;import javax.swing.JButton;public class MyMainFrame extends JFrame implements ActionListener MyCanvas myCanvas;JPanel panelNorth,panelPreview;/定义上方的面板,及预览所需的面板Button start,preview,set;/定义开始,预览,设定按钮Container con

4、tainer;/容器,得到内容面板public MyMainFrame() /初使化container=this.getContentPane();start=new Button(开始);start.addActionListener(this);preview=new Button(预览);preview.addActionListener(this);set = new Button(设置);set.addActionListener(this);panelPreview=new JPanel();panelPreview.setLayout(null);Icon icon=new Im

5、ageIcon(pic_+MyCanvas.pictureID+.jpg);JLabel label=new JLabel(icon);label.setBounds(0,0,300,300);panelPreview.add(label);panelNorth=new JPanel();panelNorth.setBackground(Color.red);panelNorth.add(start);panelNorth.add(preview);panelNorth.add(set);myCanvas=new MyCanvas();container.add(myCanvas,Border

6、Layout.CENTER);container.add(panelNorth,BorderLayout.NORTH);this.setTitle(拼图小游戏-明);this.setLocation(300,200);this.setSize(308,365);this.setResizable(false);this.setVisible(true);this.setDefaultCloseOperation(3);public static void main(String args) / TODO 自动生成方法存根new MyMainFrame();public void actionP

7、erformed(ActionEvent arg0) /对三个按钮事件的处理/ TODO 自动生成方法存根Button button=(Button)arg0.getSource();if(button=start)myCanvas.Start();else if(button=preview)if(button.getLabel()=预览)container.remove(myCanvas);container.add(panelPreview);panelPreview.updateUI();container.repaint();button.setLabel(返回);elseconta

8、iner.remove(panelPreview);container.add(myCanvas);container.repaint();button.setLabel(预览);else if(button=set)/修改所选图片Choice pic = new Choice();pic.add(小猫);pic.add(小猪);pic.add(云);pic.add(QQ);pic.add(卡通);pic.add(花);int i=JOptionPane.showConfirmDialog(this, pic, 选择图片, JOptionPane.OK_CANCEL_OPTION);if(i=

9、JOptionPane.YES_OPTION)MyCanvas.pictureID=pic.getSelectedIndex()+1;myCanvas.reLoadPictrue();Icon icon=new ImageIcon(pic_+MyCanvas.pictureID+.jpg);JLabel label=new JLabel(icon);label.setBounds(0,0,300,300);panelPreview.removeAll();panelPreview.add(label);panelPreview.repaint();class MyCanvas extends

10、JPanel implements MouseListener boolean hasAddActionListener=false;/设置方格的动作监听器的标志位,TRUE为已经添加上动作事件,FALSE是尚未添加动作事件Cell cell;/定义方格Rectangle cellNull;/定义空方格区域public static int pictureID=1;/当前选择的图片代号public MyCanvas() this.setLayout(null);this.setSize(400,400);cellNull=new Rectangle(200,200,100,100);/空方格区域在第三行每三列cell=new Cell9;Icon icon;for (int i = 0; i 3; i+) /为9个方格加载图片,并初使化坐标,形成三行三列for(int j=0;j3;j+)icon=new ImageIcon(pic_+pictureID+_+(i*3+j+1)+.jpg);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论