资源简介
使用java程序编写的拼图程序
二、课程设计内容
1、设计题目:编写拼图游戏程序
2、拼图游戏具用功能:
所谓拼图游戏,是指将一个完整的图片分割成若干个规则的小图片,然后将这些小图片随机地拼在一起,然后由玩家按照原图重新拼接出正确的图片。
三、设计思路
通过单击与空白网格相邻的网格,可以将该网格显示的图片移动到空白网格中,那么可以用一个按钮代表一个网格,然后让每个按钮显示一个小图片,最后将这些按钮添加到一个面板中,并让这个面板采用网格布局。
需要解决的问题:
(1)如何实现图片移动
(2)如何判断被单击的网格与空白的网格是否相邻
(3)如何实现图片的随机摆放
代码片段和文件信息
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.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
//以上均引用不同的package内的类
public class MyMainframe extends Jframe implements ActionListener {//MyMainframe类extends “Jframe”类实现 ActionListener的方法
MyCanvas myCanvas; //初始化对象MyCanvas类
JPanel panelNorthpanelPreview;//定义上方的面板,及预览所需的面板
Button startpreviewset;//定义开始,预览,设定按钮
Container container;//容器,得到内容面板
public MyMainframe() {//初使化
container=this.getContentPane(); //得到当前对象的ContentPane,并且把它赋给container
start=new Button(“开始“);//创建并初始新的Button(按钮)对象,赋给start
start.addActionListener(this); //在这个按钮对象中添加监听器,范围是当前对象
preview=new Button(“预览“);//同上,创建新的Button对象。。。。。
preview.addActionListener(this);//同上。。。。。
set = new Button(“设置“); //同上。。。。。(感觉代码都差不多吧?呵呵)
set.addActionListener(this);//同上
panelPreview=new JPanel(); 创建新的JPanel(面板)对象
panelPreview.setLayout(null); //设置面板对象的布局为空
Icon icon=new ImageIcon(“pic/pic_“+MyCanvas.pictureID+“.jpg“); //创建并初始新的图标对象。图标的图片路径是pic目录下的pic与通过MyCanvas.pictureId取得字符串再与.jpg合并后的名称。例如(pic/pic_1234.jsp)
JLabel label=new JLabel(icon); //定义新的JLable(java标签),并初始
label.setBounds(00300300); //设置标签的范围(长x轴宽y轴,长多,宽多少)
panelPreview.add(label); //面板对象中添加label这个对象
panelNorth=new JPanel(); //定义新的JPanel
panelNorth.setBackground(Color.red); //设置JPanel的背景色
panelNorth.add(start); //Jpanel加入按钮
panelNorth.add(preview); //同上
panelNorth.add(set); //同上
myCanvas=new MyCanvas(); //实例化MyCanvas
container.add(myCanvasBorderLayout.CENTER);//在容器(前边定义好了这个对象)中添加myCanvas,设置它的布局为居中
container.add(panelNorthBorderLayout.NORTH);//添加Jpanel,布局为北(也就是上)
this.settitle(“拼图小游戏-“); //设置这个对象的题目叫。。。。。
this.setLocation(300200); //
- 上一篇:android上传文件.rar
- 下一篇:开发者选项ROOT设置
相关资源
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
- java Servlet投票实例
- 操作系统作业 (pv,作业管理,等5个
- 基于C/S架构考试系统(Java)
- java access 仓库管理系统 源码
- 一元多项式相加 java实现
- java软件工程师简历模板——应届生
- DES(CFB) JAVA
评论
共有 条评论