基于java开发的蜘蛛纸牌程序设计图文稿

基于j a v a开发的蜘蛛纸牌程序设计集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)编号:本科毕业论文(设计)题目:学院专业学号姓名指导教师职称:完成日期诚信承诺我谨在此承诺:本人所写的毕业论文《》均系本人独立完成,没有抄袭行为,凡涉及其他作者的观点和材料,均作了注释,若有不实,后果由本人承担。

承诺人(签名):年月日基于java开发的蜘蛛纸牌程序设计姓名:关俊生学号:指导老师:李林国摘要:java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。

Java是面向对象的语言。

蜘蛛纸牌是一款受人喜欢的休闲游戏,微软的每一代操作系统中都装有这种纸牌游戏,很多人都玩过蜘蛛纸牌,都熟悉蜘蛛纸牌游戏所需要的功能。

本人做的蜘蛛纸牌游戏开发理念是基于WINDOWS XP操作系统中自带蜘蛛纸牌游戏。

利用java语言实现了蜘蛛纸牌游戏的主要功能如纸牌的移动、放置、回收、重发。

利用javax.swing包的类实现纸牌游戏的用户界面,通为各个菜单组件添加监视器来实现鼠标单击事件所触发的接口方法,使得用户可以单击菜单项来实现具体的功能。

通过设置纸牌的等级来初始化纸牌随机分配纸牌,为用户玩纸牌游戏提供相应的等级。

意义:通过自己对蜘蛛纸牌游戏的开发,使我更加热爱java语言,让我懂得和洗去了更多程序开发的知识及经验,为以后进入编程工作提供条件。

关键字:java语言、游戏背景、功能实现Spider solitaire program based on java developmentName: Guan Junsheng Student ID: 200 829 010 213 Instructor: Li LinguoAbstract: java is the Java programming language from Sun Microsystems, Inc. in May 1995 (hereinafter referred to as the general term of the Java language) and Java platforms. Java is object-oriented languages. Spider Solitaire is a people like casual games, each generation of Microsoft's operating system are equipped with this card game, many people have played Spider Solitaire are all familiar with the functionality required by the spider card game. I do spider solitaire game development philosophy is based on the WINDOWS XP operating system comes with the spider solitaire game. Java language to achieve the main function of the spider solitaire game, such asmovement of the playing cards, place, recycling, re-issued. The use of the javax.swing package class that implements the user interface of the card game pass for each menu component to add a monitor to the mouse click event triggered by the interface method, the user can click the menu items to achieve a specific function. To initialize the cards by the level of the set of cards randomly assigned to cards, to provide the appropriate level for users playing solitaire. Meaning: the spidersolitaire game development, so that I more love the java language, so I know how to wash away the more knowledge and experience of program development, and provide conditions for the future to enter the programming work.Keywords: Java language, the background of the game functions目录1.绪论1.1 游戏开发的背景知识.....................................1.2 需要做的准备工作......................................2.开发工具介绍................................................2.1 java语言概述..........................................2.2 java语言的特点........................................2.3 Eclipse开发平台介绍...................................3.总体设计...................................................3.1代码功能模块的设计....................................3.2 程序总体设计流程图...................................3.3模块一的详细介绍......................................3.3.1 主要的类.......................................3.3.2 主要的变量.............................................................................3.4 模块二的详细介绍.....................................3.4.1主要的类.........................................3.4.2 主要的变量.....................................3.4.3主要的方法.......................................3.5 模块三的详细介绍......................................3.5.1主要的类..........................................3.5.2主要的变量.......................................3.5.3 主要的方法........................................3.6模块四的详细.............................................3.6.1主要的类...........................................3.6.2主要的变量.......................................3.6.3 主要的方法........................................4.功能设计....................................................4.1 需要实现的主要功能......................................4.2 功能设计流程图..........................................4.3 主要功能的代码实现......................................4.3.1 游戏菜单栏内游戏菜单及帮助菜单功能展示............4.3.2 主界面的设计.........................................4.3.3 纸牌的初始化以及发牌操作.............................4.3.4 纸牌的移动以及放置....................................4.3.5显示当前纸牌可行的操作................................4.3.6 回收纸牌.............................................5.程序的运行及发布................................................5.1 运行程序....................................................5.2 发布程序....................................................6.工作总结........................................................参考文献..........................................................1.绪论1.1 游戏开发的背景知识相信很多人都玩过蜘蛛纸牌这款休闲游戏,现在随着生活水平的提高,人们拥有充分的时间来享受休闲游戏带来的快乐,越来越多的人亲睐蜘蛛纸牌游戏。

谈起这款游戏,大家并不陌生。

从WINDOWS2000系统开始,就嵌入了蜘蛛纸牌游戏,可是随着微软系统的不段升级,蜘蛛纸牌游戏的功能业变得越来越强大,游戏的界面也更加美观。

合集下载

蜘蛛纸牌程序演示ppt课件

蜘蛛纸牌程序演示ppt课件

03
游戏界面设计
界面布局
01
02
03
界面尺寸
选择合适的界面尺寸,确 保游戏在各种设备上都能 清晰显示。
布局元素
将游戏界面划分为不同的 区域,如菜单栏、游戏区、 状态栏等。
色彩搭配
选择与游戏主题相符的颜 色,使界面更加美观和易 于识别。
按钮设计
按钮类型
根据游戏功能需求,设计不同类 型的按钮,如开始、暂停、退出
THANK YOU
04
游戏实现技术
游戏引擎
游戏引擎概述
游戏引擎是开发游戏的核心工具, 它提供了一系列的功能和工具, 使开发者能够更高效地创建游戏。
游戏引擎的作用
游戏引擎负责处理游戏的渲染、 物理模拟、碰撞检测、音效和动 画等功能,使游戏具有高度的交
互性和逼真度。
游戏引擎的种类
游戏引擎有多种类型,包括实时 渲染引擎和离线渲染引擎。实时 渲染引擎主要用于3D游戏,而离 线渲染引擎主要用于2D游戏。
蜘蛛纸牌程序演示ppt课件
contents
目录
• 介绍 • 游戏规则 • 游戏界面设计 • 游戏实现技术 • 游戏测试与优化 • 游戏总结与展望
01
介绍
游戏背景
01
蜘蛛纸牌是一款经典的休闲益智 游戏,玩家需要通过移动纸牌来 排列成连续的数字或花色,最终 目标是完成所有纸牌的排列。
02
游戏起源于20世纪早期,随着计 算机技术的发展,蜘蛛纸牌游戏 逐渐成为计算机教育领域中的经 典案例。
利用AI技术提升游戏的智能水 平,为玩家提供更加智能的对
手。Biblioteka 扩展平台将游戏移植到更多平台,如手 机、平板电脑等,方便玩家随
时随地享受游戏的乐趣。

Java课程设计报告蜘蛛纸牌游戏

Java课程设计报告蜘蛛纸牌游戏

目录1. 选题目的与系统概述 (2)2. 系统可行性分析与相关技术背景分析 (3)2.1系统可行性分析 (3)2.2相关技术背景分析 (3)3. 系统设计与关键技术 (4)3.1系统设计 (4)3.2关键技术 (5)4.系统测试与操作实施方法 (9)4.1进入游戏运行界面 (9)4.2 游戏的具体的操作过程 (9)4.3进入“帮助”菜单 (10)4.4游戏中的异常处理情况 (11)5.系统设计总结与回顾 (12)6.附录 (13)6.1 AboutDialog.java (13)6.2 PKCard.java (14)6.3 Spider.java (20)6.4 Spider M enuBar.java (29)1.选题目的与系统概述随着经济全球一体化的逐步加剧,人们的生活节奏越来越快。

蜘蛛纸牌游戏的一种,旨在让工作学习之后疲惫的玩家有一个轻愉快的放松方式。

与普通的纸牌相比,降低了一点难度。

游戏简单级别由8组A-K的清一色黑桃牌面组成,取消了红黑相间的游戏规则,更突然出强化了玩家在安排事物方面的能力。

蜘蛛纸牌游戏实现了与Windows系列操作系统中自带的蜘蛛纸牌游戏类似的功能。

该游戏程序中采用Windows系列中游戏的图片,运用Java语言设计了线程、鼠标事件、纸牌的装载、图形界面的构造、组件监听接口的实现、生成蜘蛛纸牌游戏的框架、实现游戏中的方法,是一种休闲益智游戏。

2.系统可行性分析与相关技术背景分析2.1系统可行性分析蜘蛛纸牌游戏规则是:(1)将电脑分发给你的牌按照相同的花色又打至小排列起来,直到桌面上的牌全都消失。

(2)可执行的牌必须为明牌(3)单牌移动规则(4)多拍移动规则游戏分三个等级:(1)简答:单一花色;(2)中级:双花色;(3)四花色。

2.2相关技术背景分析2.2.1蜘蛛纸牌游戏是基于Eclipse平台的Java程序。

Eclipse的背景如下:Eclipse最初是IBM公司的一个软件产品。

Spider——蜘蛛纸牌java程序设计3

Spider——蜘蛛纸牌java程序设计3

import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.util.*;public class Spider extends JFrame{//整型变量,表示难度等级为:简单public static final int EASY = 1;//整型变量,表示难度等级为:普通public static final int NATURAL = 2;//整型变量,表示难度等级为:难public static final int HARD = 3;//设定初始难度等级为简单private int grade = Spider.EASY;private Container pane = null;//生成纸牌数组private PKCard cards[] = new PKCard[104];private JLabel clickLabel = null;private int c = 0;private int n = 0;private int a = 0;private int finish = 0;Hashtable table = null;private JLabel groundLabel[] = null;public static void main(String[] args){Spider spider = new Spider();spider.setVisible(true);}/****构造函数*/public Spider(){setTitle("蜘蛛牌");setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);//设置框架的大小setSize(1024, 742);//生成SpiderMenuBar对象,并放置在框架之上setJMenuBar(new SpiderMenuBar(this));pane = this.getContentPane();//设置背景颜色pane.setBackground(new Color(0, 112, 26));//将布局管理器设置成为nullpane.setLayout(null);clickLabel = new JLabel();clickLabel.setBounds(883, 606, 121, 96);pane.add(clickLabel);clickLabel.addMouseListener(new MouseAdapter(){public void mouseReleased(MouseEvent me){if (c < 60){Spider.this.deal();}}});this.initCards();this.randomCards();this.setCardsLocation();groundLabel = new JLabel[10];int x = 20;for (int i = 0; i < 10; i++){groundLabel[i] = new JLabel();groundLabel[i].setBorder(javax.swing.BorderFactory.createEtchedBorder(javax.swing.border.EtchedBorder.RAISE D));groundLabel[i].setBounds(x, 25, 71, 96);x += 101;this.pane.add(groundLabel[i]);}this.setVisible(true);this.deal();this.addKeyListener(new KeyAdapter(){class Show extends Thread{public void run(){Spider.this.showEnableOperator();}}public void keyPressed(KeyEvent e){if (finish != 8) if (e.getKeyCode() == KeyEvent.VK_D && c < 60){ Spider.this.deal();}else if (e.getKeyCode() == KeyEvent.VK_M){new Show().start();}}});}/****开始新游戏*/public void newGame(){this.randomCards();this.setCardsLocation();this.setGroundLabelZOrder();this.deal();}/****返回值:int**返回牌的数量*/public int getC(){return c;}/****设置等级*/public void setGrade(int grade){this.grade = grade;}/****纸牌初始化*/public void initCards(){//如果纸牌已被赋值,即将其从框架的面板中移去if (cards[0] != null){for (int i = 0; i < 104; i++){pane.remove(cards[i]);}}int n = 0;//通过难度等级,为n赋值if (this.grade == Spider.EASY){n = 1;}else if (this.grade == Spider.NA TURAL){n = 2;}else{n = 4;}//为card赋值for (int i = 1; i <= 8; i++){for (int j = 1; j <= 13; j++){cards[(i - 1) * 13 + j - 1] = new PKCard((i % n + 1) + "-" + j,this);}}//随机纸牌初始化this.randomCards();}/****纸牌随机分配*/public void randomCards(){PKCard temp = null;//随机生成牌号for (int i = 0; i < 52; i++){int a = (int) (Math.random() * 104);int b = (int) (Math.random() * 104);temp = cards[a];cards[a] = cards[b];cards[b] = temp;}}/****设置还原*/public void setNA(){a = 0;n = 0;}/****设置纸牌的位置*/public void setCardsLocation(){table = new Hashtable();c = 0;finish = 0;n = 0;a = 0;int x = 883;int y = 580;//初始化待展开的纸牌for (int i = 0; i < 6; i++){for (int j = 0; j < 10; j++){int n = i * 10 + j;pane.add(cards[n]);//将card转向背面cards[n].turnRear();//将card放在固定的位置上cards[n].moveto(new Point(x, y));//将card的位置及相关信息存入table.put(new Point(x, y), cards[n]);}x += 10;}x = 20;y = 45;//初始化表面显示的纸牌for (int i = 10; i > 5; i--){for (int j = 0; j < 10; j++){int n = i * 10 + j;if (n >= 104) continue;pane.add(cards[n]);cards[n].turnRear();cards[n].moveto(new Point(x, y));table.put(new Point(x, y), cards[n]);x += 101;}x = 20;y -= 5;}}/****返回值:void**方法:显示可移动的操作*/public void showEnableOperator(){int x = 0;out: while (true){Point point = null;PKCard card = null;do{if (point != null){n++;}point = this.getLastCardLocation(n);while (point == null){point = this.getLastCardLocation(++n);if (n == 10) n = 0;x++;if (x == 10) break out;}card = (PKCard) this.table.get(point);}while (!card.isCardCanMove());while (this.getPreviousCard(card) != null&& this.getPreviousCard(card).isCardCanMove()){ card = this.getPreviousCard(card);}if (a == 10){a = 0;}for (; a < 10; a++){if (a != n){Point p = null;PKCard c = null;do{if (p != null){a++;}p = this.getLastCardLocation(a);int z = 0;while (p == null){p = this.getLastCardLocation(++a);if (a == 10) a = 0;if (a == n) a++;z++;if (z == 10) break out;}c = (PKCard) this.table.get(p);}while (!c.isCardCanMove());if (c.getCardValue() == card.getCardValue() + 1){card.flashCard(card);try{Thread.sleep(800);}catch (InterruptedException e){e.printStackTrace();}c.flashCard(c);a++;if (a == 10){n++;}break out;}}}n++;if (n == 10){n = 0;}x++;if (x == 10){break out;}}}/***返回值:void**方法:游戏运行*/public void deal(){this.setNA();//判断10列中是否空列for (int i = 0; i < 10; i++){if (this.getLastCardLocation(i) == null){JOptionPane.showMessageDialog(this, "有空位不能发牌!", "提示",JOptionPane.W ARNING_MESSAGE);return;}}int x = 20;for (int i = 0; i < 10; i++){Point lastPoint = this.getLastCardLocation(i);//这张牌应“背面向上”if (c == 0){lastPoint.y += 5;}//这张牌应“正面向上”else{lastPoint.y += 20;}table.remove(cards[c + i].getLocation());cards[c + i].moveto(lastPoint);table.put(new Point(lastPoint), cards[c + i]);cards[c + i].turnFront();cards[c + i].setCanMove(true);//将组件card移动到容器中指定的顺序索引。

AboutDialog——蜘蛛纸牌java程序设计1

AboutDialog——蜘蛛纸牌java程序设计1

import javax.swing.*;import java.awt.*;/***“关于”窗口*/public class AboutDialog extends JDialog{JPanel jMainPane = new JPanel();JTabbedPane jTabbedPane = new JTabbedPane();private JPanel jPanel1 = new JPanel();private JPanel jPanel2 = new JPanel();private JTextArea jt1 = new JTextArea("将电脑多次分发给你的牌按照相同的花色由大至小排列起来。

直到桌面上的牌全都消失。

");private JTextArea jt2 = new JTextArea("该游戏中,纸牌的图片来自于Windows XP的纸牌游戏,图片权属于原作者所有!");/***构造函数*/public AboutDialog(){setTitle("蜘蛛牌");setSize(300,200);setResizable(false);setDefaultCloseOperation (WindowConstants.DISPOSE_ON_CLOSE);Container c = this.getContentPane();jt1.setSize(260,200);jt2.setSize(260,200);jt1.setEditable(false);jt2.setEditable(false);jt1.setLineWrap(true);jt2.setLineWrap(true);jt1.setFont(new Font("楷体_GB2312", java.awt.Font.BOLD, 13));jt1.setForeground(Color.blue);jt2.setFont(new Font("楷体_GB2312", java.awt.Font.BOLD, 13));jt2.setForeground(Color.black);jPanel1.add(jt1);jPanel2.add(jt2);jTabbedPane.setSize(300,200);jTabbedPane.addTab("游戏规则", null, jPanel1, null);jTabbedPane.addTab("声明", null, jPanel2, null);jMainPane.add(jTabbedPane);c.add(jMainPane);pack();this.setVisible(true);}}。

蜘蛛纸牌java程序设计小游戏设计代码

蜘蛛纸牌java程序设计小游戏设计代码

蜘蛛纸牌java程序设计小游戏设计代码JA V A程序——小游戏设计:蜘蛛纸牌4代码如下:import javax.swing.JMenuBar;import javax.swing.JMenu;import javax.swing.JMenuItem;import javax.swing.JRadioButtonMenuItem;import javax.swing.ButtonGroup;public class SpiderMenuBar extends JMenuBar{//生成spider框架对象Spider main = null;//生成菜单组JMenu jNewGame = new JMenu("游戏");JMenu jHelp = new JMenu("帮助");//生成菜单项JMenuItem jItemAbout = new JMenuItem("关于");JMenuItem jItemOpen = new JMenuItem("开局");JMenuItem jItemPlayAgain = new JMenuItem("重新发牌");//生成单选框JRadioButtonMenuItem jRMItemEasy = new JRadioButtonMenuItem("简单:单一花色");JRadioButtonMenuItem jRMItemNormal = new JRadioButtonMenuItem("中级:双花色");JRadioButtonMenuItem jRMItemHard = new JRadioButtonMenuItem("高级:四花色");;JMenuItem jItemExit = new JMenuItem("退出");JMenuItem jItemValid = new JMenuItem("显示可行操作");/****构造函数,生成JMenuBar的图形界面*/public SpiderMenuBar(Spider spider){this.main = spider;/****初始化“游戏”菜单栏*/jNewGame.add(jItemOpen);jNewGame.add(jItemPlayAgain);jNewGame.add(jItemValid);jNewGame.addSeparator();jNewGame.add(jRMItemEasy);jNewGame.add(jRMItemNormal);jNewGame.add(jRMItemHard);jNewGame.addSeparator();jNewGame.add(jItemExit);ButtonGroup group = new ButtonGroup();group.add(jRMItemEasy);group.add(jRMItemNormal);group.add(jRMItemHard);jHelp.add(jItemAbout);this.add(jNewGame);this.add(jHelp);//为组件添加事件监听并实现//“开局”jItemOpen.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { main.newGame();}});//“重新发牌”jItemPlayAgain.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { if(main.getC() < 60){main.deal();}}});//"显示可行操作"jItemValid.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { new Show().start();}});//“退出”jItemExit.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { main.dispose();System.exit(0);}});//“简单级别”默认已选jRMItemEasy.setSelected(true);//“简单级别”jRMItemEasy.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { main.setGrade(Spider.EASY);main.initCards();main.newGame();}});//“中级”jRMItemNormal.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { main.setGrade(Spider.NATURAL);main.initCards();main.newGame();}});//“高级”jRMItemHard.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { main.setGrade(Spider.HARD);main.initCards();main.newGame();}});jNewGame.addMenuListener(newjavax.swing.event.MenuListener() { public void menuSelected(javax.swing.event.MenuEvent e) { if(main.getC() < 60){jItemPlayAgain.setEnabled(true);}else{jItemPlayAgain.setEnabled(false);}}public void menuDeselected(javax.swing.event.MenuEvent e) {}public void menuCanceled(javax.swing.event.MenuEvent e) {} });//“关于”jItemAbout.addActionListener(newjava.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) {new AboutDialog();}});}/****构造线程:显示可以执行的操作*/class Show extends Thread{public void run(){main.showEnableOperator();}}}。

Java课程设计蜘蛛纸牌李娜-推荐下载

Java课程设计蜘蛛纸牌李娜-推荐下载

对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电通,力1根保过据护管生高线0产中不工资仅艺料可高试以中卷解资配决料置吊试技顶卷术层要是配求指置,机不对组规电在范气进高设行中备继资进电料行保试空护卷载高问与中题带资22负料,荷试而下卷且高总可中体保资配障料置各试时类卷,管调需路控要习试在题验最到;大位对限。设度在备内管进来路行确敷调保设整机过使组程其高1在中正资,常料要工试加况卷强下安看2与全22过,22度并22工且22作尽2下可护1都能关可地于以缩管正小路常故高工障中作高资;中料对资试于料卷继试连电卷接保破管护坏口进范处行围理整,高核或中对者资定对料值某试,些卷审异弯核常扁与高度校中固对资定图料盒纸试位,卷置编工.写况保复进护杂行层设自防备动腐与处跨装理接置,地高尤线中其弯资要曲料避半试免径卷错标调误高试高等方中,案资要,料求编5试技写、卷术重电保交要气护底设设装。备备4置管高调、动线中试电作敷资高气,设料中课并3技试资件且、术卷料拒管中试试调绝路包验卷试动敷含方技作设线案术,技槽以来术、及避管系免架统不等启必多动要项方高方案中式;资,对料为整试解套卷决启突高动然中过停语程机文中。电高因气中此课资,件料电中试力管卷高壁电中薄气资、设料接备试口进卷不行保严调护等试装问工置题作调,并试合且技理进术利行,用过要管关求线运电敷行力设高保技中护术资装。料置线试做缆卷到敷技准设术确原指灵则导活:。。在对对分于于线调差盒试动处过保,程护当中装不高置同中高电资中压料资回试料路卷试交技卷叉术调时问试,题技应,术采作是用为指金调发属试电隔人机板员一进,变行需压隔要器开在组处事在理前发;掌生同握内一图部线纸故槽资障内料时,、,强设需电备要回制进路造行须厂外同家部时出电切具源断高高习中中题资资电料料源试试,卷卷线试切缆验除敷报从设告而完与采毕相用,关高要技中进术资行资料检料试查,卷和并主检且要测了保处解护理现装。场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。

蜘蛛纸牌游戏设计 计算机科学与技术(毕业论文)

宜宾学院2020届毕业设计(论文)摘要现在社会在进步,人民生活水平也随着提高,人们可以利用多余的时间去体验游戏,从中感受快乐。

目前为止,游戏有很多类型。

例如,动作、冒险、模拟、角色扮演、休闲等类游戏都在迅速发展。

其中,很多人最熟悉的应该就是蜘蛛纸牌游戏了吧。

蜘蛛纸牌游戏是一款休闲益智类游戏,非常受大家的欢迎,随着科学技术的发展科技水平的进步,游戏实现的功能也越来越多,游戏界面也变得越来越好看,玩家的体验感受也越来越好, 让游戏的开发对于人们的生活娱乐更加有意义。

因此,也有越来越多的人亲睐于这款游戏。

这款蜘蛛纸牌游戏我是用Java语言来实现的,其中主要实现了纸牌的移动,发放等。

其设计的灵感主要来自于window7操作系统中的蜘蛛纸牌游戏。

关键词休闲游戏;Java语言;功能实现AbstractNow that society is progressing and people's living standards are improving, people can use the extra time to experience games and feel happy. So far, there are many types of games. For example, action, adventure, simulation, role-playing, leisure and other games are all developing rapidly. Among them, the spider card game should be the most familiar to many people. Spider Solitaire is a casual puzzle game that is very popular with everyone. With the development of science and technology, the level of science and technology has improved, the game has more and more functions, and the game interface has become more and more beautiful The experience experience is getting better and better, making game development more meaningful for people's life and entertainment. Therefore, more and more people love this game.I implemented this spider card game in Java language, which mainly realized the movement and distribution of cards. The inspiration for its design comes mainly from the spider card game in the window7 operating systemKey words the recreational game; java language; function realization目录第1章绪论 (3)1.1 休闲娱乐游戏[1] (3)1.2 游戏的背景 (3)1.3 国内外研究现状[2] (3)1.4 工作内容 (3)1.5 开发语言的简介[3] (4)1.6 开发语言特点[4] (4)1.7 开发工具Eclipse[5] (5)1.8 本游戏开发的意义 (6)第2章需求分析设计 (6)2.1 程序设计的任务概述[6] (6)2.2 系统特点 (6)2.3 功能需求 (7)2.4 界面的设计 (7)2.5 游戏设计主流程分析 (7)2.6 综合要求 (8)2.7 模型[8] (8)2.8 游戏程序需要解决的问题[9] (9)第3章程序的总体设计 (9)3.1 线程的设计 (9)3.1.1 通过Thread类实现 (9)3.1.2 实现Runnable接口 (10)3.2 代码功能的设计 (10)3.3 总体设计流程图 (10)3.4 模块一Spider (11)3.5 模块二SpiderMenuBar (13)3.6 模块三AboutDialog (14)3.7 模块四PKCard (15)第4章程序的详细设计 (6)4.1 程序流程图 (16)4.2 界面设计的实现[10] (17)4.3 等级设置的实现[14] (24)4.4 初始化纸牌以及发牌操作的实现[16] (25)4.5 游戏的运行 (27)4.5.1 纸牌游戏的移动放置操作[18] (28)4.5.2 回收纸牌操作[19] (29)4.5.3 帮助菜单 (29)4.5.4 退出功能 (29)第5章系统测试 (29)5.1 测试方法 (29)5.2 测试用例[20] (30)5.3 测试结果 (30)结论 (36)致谢.......................................................................................................................... 错误!未定义书签。

基于的java开发地蜘蛛纸牌程序设计

编号:本科毕业论文(设计)题目:学院专业学号姓名指导教师职称:完成日期诚信承诺我谨在此承诺:本人所写的毕业论文《》均系本人独立完成,没有抄袭行为,凡涉及其他作者的观点和材料,均作了注释,若有不实,后果由本人承担。

承诺人(签名):年月日基于java开发的蜘蛛纸牌程序设计姓名:关俊生学号:200829010213 指导老师:李林国摘要:java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。

Java是面向对象的语言。

蜘蛛纸牌是一款受人喜欢的休闲游戏,微软的每一代操作系统中都装有这种纸牌游戏,很多人都玩过蜘蛛纸牌,都熟悉蜘蛛纸牌游戏所需要的功能。

本人做的蜘蛛纸牌游戏开发理念是基于WINDOWS XP操作系统中自带蜘蛛纸牌游戏。

利用java语言实现了蜘蛛纸牌游戏的主要功能如纸牌的移动、放置、回收、重发。

利用javax.swing包的类实现纸牌游戏的用户界面,通为各个菜单组件添加监视器来实现鼠标单击事件所触发的接口方法,使得用户可以单击菜单项来实现具体的功能。

通过设置纸牌的等级来初始化纸牌随机分配纸牌,为用户玩纸牌游戏提供相应的等级。

意义:通过自己对蜘蛛纸牌游戏的开发,使我更加热爱java语言,让我懂得和洗去了更多程序开发的知识及经验,为以后进入编程工作提供条件。

关键字:java语言、游戏背景、功能实现Spider solitaire program based on java development Name: Guan Junsheng Student ID: 200 829 010 213 Instructor: Li LinguoAbstract: java is the Java programming language from Sun Microsystems, Inc. in May 1995 (hereinafter referred to as the general term of the Java language) and Java platforms. Java is object-oriented languages. Spider Solitaire is a people like casual games, each generation of Microsoft's operating system are equipped with this card game, many people have played Spider Solitaire are all familiar with the functionality required by the spider card game. I do spider solitaire game development philosophy is based on the WINDOWS XP operating system comes with the spider solitaire game. Java language to achieve the main function of the spider solitaire game, such as movement of the playing cards, place, recycling, re-issued. The use of the javax.swing package class that implements the user interface of the card game pass for each menu component to add a monitor to the mouse click event triggered by the interface method, the user can click the menu items to achieve a specific function. To initialize the cards by the level of the set of cards randomly assigned to cards, to provide the appropriate level for users playing solitaire. Meaning: the spider solitaire game development, so that I more love the java language, so I know how to wash away the more knowledge and experience of program development, and provide conditions for the future to enter the programming work.Keywords: Java language, the background of the game functions目录1.绪论1.1 游戏开发的背景知识.....................................1.2 需要做的准备工作......................................2.开发工具介绍................................................2.1 java语言概述..........................................2.2 java语言的特点........................................2.3 Eclipse开发平台介绍...................................3.总体设计...................................................3.1代码功能模块的设计....................................3.2 程序总体设计流程图...................................3.3模块一的详细介绍......................................3.3.1 主要的类.......................................3.3.2 主要的变量......................................3.3.3主要的方法.......................................3.4 模块二的详细介绍.....................................3.4.1主要的类.........................................3.4.2 主要的变量.....................................3.4.3主要的方法.......................................3.5 模块三的详细介绍......................................3.5.1主要的类..........................................3.5.2主要的变量.......................................3.5.3 主要的方法........................................3.6模块四的详细.............................................3.6.1主要的类...........................................3.6.2主要的变量.......................................3.6.3 主要的方法........................................4.功能设计....................................................4.1 需要实现的主要功能......................................4.2 功能设计流程图..........................................4.3 主要功能的代码实现......................................4.3.1 游戏菜单栏内游戏菜单及帮助菜单功能展示............4.3.2 主界面的设计.........................................4.3.3 纸牌的初始化以及发牌操作.............................4.3.4 纸牌的移动以及放置....................................4.3.5显示当前纸牌可行的操作................................4.3.6 回收纸牌.............................................5.程序的运行及发布................................................5.1 运行程序....................................................5.2 发布程序....................................................6.工作总结........................................................参考文献..........................................................1.绪论1.1 游戏开发的背景知识相信很多人都玩过蜘蛛纸牌这款休闲游戏,现在随着生活水平的提高,人们拥有充分的时间来享受休闲游戏带来的快乐,越来越多的人亲睐蜘蛛纸牌游戏。

java蜘蛛纸牌设计报告

本科学年论文(设计)基于Java的蜘蛛纸牌游戏设计系别信息管理系专业电子信息工程届别2013 班级学生姓名邓晓寒学号2013550514指导教师黄丽蓉职称二O一六年五月摘要随着休闭游戏市场竟争的升级,尤其是樸牌类休闲游戏的巨大市场前景的吸引,许多公司都加入到棋牌游戏的竞争之列,一时之间竟争可谓惨烈传统的休闲棋牌类游游戏中,微软公司出品的躥N以鬲系列多个版本作系统中所自帚的蜘蛛紙牌游戏是玩家最为熟知的“蜘蛛纸牌,游戏是典型的两副牌游戏,游戏的目标是以最少的移动次数将十叠牌中所有最前面的牌都移走。

Java是由SunMicrosystems公司于1995年5月推出的Java程序设计语言和Java平台的总称本课题将采用Java语言编写这个蜘蛛纸牌游戏程序并采用eclipse3.2编译软件来编译该游戏程序。

【关键词】:休闲游戏,Java语言,编译软件AbstractBecausetherecreationalgamemarketcompeteOfgetstripe,particularlytheattraction Ofthehugemarketforegroundofthechesscardrecreationalgame,manycompaniesalljointh erowofthecompetitionOfchesscardgame,thatisatthattimethecompetitionbeitmaysaidhor rifying.Traditionalrecreationalchesscardswimsgamem,theMicrosoftcompanyproduceo fWINDOWSseriesseveraleditionoperatesystemsinfromtakeofthespiderplayingcardsga mebethattheplayeristhemostwellknow."Spiderplayingcards"gametwotypicalcardgames ,thetargetofgamewiththeminimalambulationnumberoftimeswilltenfoldallrmstanteriorc ardsincardtomove№walkThegenericnameofthelanguageandJavaterraceoftheJavaprogr amdesignthattheJavareleasedMayin1995bythecompanyofSunMicrosystems.Thistopic willadoptJavalanguagetowritethisgameprocedureofthespiderplayingcardscombineadop tioneclipse3.2editandtranslatesoftwaretoeditandtranslatethatgameprocedure. Keywords:Therecreationalgame,theJavalanguage,editsandtranslatesoftware目录第1章国内外现状 (1)第2章开发工具简介 (1)第3章游戏程序设计需求分析 (2)第4章 (4)4.1主要界面的实现 (4)4.2初始化纸牌及发牌操作: (8)4.3纸牌移动放置操作: (14)4.4回收纸牌操作: (15)4.5帮助菜单功能的实现: (16)4.6退出功能的实现: (17)5.调试验证运行情况 (17)6.设计总结 (22)第1章前言1.1国内外现状随着休闲游戏市场竞争的升级,尤其是棋牌类休闲游戏的巨大市场前景的吸引,许多公司都加入到棋牌游戏的竞争之列,一时之间竞争可谓惨烈。

蜘蛛纸牌游戏

}
8
});
//“重新发牌” jItemPlayAgain.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) { if(main.getC() < 60){ main.deal(); }
一、设计(调查报告/论文)题目 蜘蛛纸牌游戏软件设计与实现
二、设计(调查报告/论文)主要内容 内容: 卡牌由扑克牌 A-K 13 个种组成,完成游戏通过鼠标操作,将电脑多次分发的纸牌,
按照相同花色由大到小排列起来,直到纸牌全部消失,即为胜利。 基本功能与要求: 1 游戏界面的布局以及纸牌的设定 2 能够设定不同等级以实现游戏难易度的不同 3 实现游戏主功能、帮助功能、退出功能 4 用 JAVA 实现蜘蛛纸牌的主要功能模块。 5 难度选择:分为简单、中级和高级。
六、主要参考资料 [1] 张广彬. Java 课程设计案例精编(第二版).北京:清华大学出版社, 2011. [2] 耿祥义. Java 课程设计(第二版).北京:清华大学出版社, 2008. [3] 耿祥义.JAVA 大学实用教程.北京:清华大学出版社,2009. [4] 邹林达.陈国君 Java2 程序设计基础.北京:清华大学出版社,2010. [5] 邹林达.Java2 程序设计基础实验指导.北京:清华大学,2010.
《 面向对象程序设计》 课程设计报告
题 目: 蜘蛛纸牌游戏软件设计与实现
院 (系):
信息科学与工程学院
专业班级: 计算机科学与技术 1201 班
学生姓名:
程伟ห้องสมุดไป่ตู้
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档