




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象程序设计(Java)课程设计报告题 目:真心话大冒险游戏专 业: 计算机网络技术 班 级: _ _学 号: _ _姓 名: _任课教师: _ 时间: 2013年 1 月3 日1.概述:课程设计的目的和系统功能概述课程设计目的:利用本次课程设计的机会,让我复习本学期所学的知识,并通过不断修改和尝试,完成程序的设计。系统功能概述:真心话大冒险小游戏一开始的界面二 详细设计方案,完整代码如下:import java.io.*;import javax.swing.*;import java.awt.*;import java.awt.event.*;public class Truthordare extends JFrame implements ActionListener,ItemListenerJMenuItem jdakaitiku,jshezhirenshu,jshezhiziti,jtuichuyouxi,jyouxiguize,jzhizuorenyuan;JMenuBar mbar;static JLabel jlabel,jlabel2;static JRadioButton jrb0,jrb3,jrb4;JCheckBox jcb1,jcb2;ImageIcon image;static int i=16,r=4;public Truthordare()super(菜单窗口);/调用父类构造器,设置标题栏文章this.setLayout(null);image =new ImageIcon(jiuping.gif);JMenu jcaidanshezhi=new JMenu(设置);/创建菜单项jdakaitiku=new JMenuItem(打开题库);/创建子菜单jshezhirenshu=new JMenuItem(设置人数);/创建子菜单jshezhiziti=new JMenuItem(设置字体);/创建子菜单jtuichuyouxi=new JMenuItem(退出游戏);/创建子菜单JMenu jcaidanxinxi=new JMenu(信息);/创建菜单项jyouxiguize=new JMenuItem(游戏规则);/创建子菜单jzhizuorenyuan=new JMenuItem(制作人员);/创建子菜单jrb0 = new JRadioButton(开始游戏);jrb3 = new JRadioButton(红色);jrb4 = new JRadioButton(黄色);jcb1 = new JCheckBox(加粗);jcb2 = new JCheckBox(斜体);jlabel2 = new JLabel(image);/图片jlabel = new JLabel(真心话大冒险);/设置标签文本的字体jlabel.setFont(new Font(楷体,Font.PLAIN,36);jrb0.addActionListener(this);/开始游戏jrb3.addActionListener(this);/红色jrb4.addActionListener(this);/黄色jcb1.addItemListener(this);/加粗jcb2.addItemListener(this);/斜体jyouxiguize.addActionListener(this);/为子菜单添加监听器jzhizuorenyuan.addActionListener(this);/为子菜单添加监听器jdakaitiku.addActionListener(this);/为子菜单添加监听器jshezhirenshu.addActionListener(this);/为子菜单添加监听器jshezhiziti.addActionListener(this);/为子菜单添加监听器jcaidanshezhi.add(jdakaitiku);/第一个菜单,将子菜单添加到菜单项中jcaidanshezhi.add(jshezhirenshu);/第一个菜单,将子菜单添加到菜单项中jcaidanshezhi.add(jshezhiziti);/第一个菜单,将子菜单添加到菜单项中jcaidanshezhi.add(jtuichuyouxi);/第一个菜单,将子菜单添加到菜单项中jcaidanxinxi.add(jyouxiguize);/第二个菜单,的子菜单jcaidanxinxi.add(jzhizuorenyuan);/第二个菜单,的子菜单jcaidanshezhi.insertSeparator(1);/给菜单添加分隔符jcaidanshezhi.insertSeparator(3);/给菜单添加分隔符jcaidanshezhi.insertSeparator(5);/给菜单添加分隔符jcaidanxinxi.insertSeparator(1);/给菜单添加分隔符ButtonGroup bg = new ButtonGroup();bg.add(jrb0);this.getContentPane().add(jrb0);this.getContentPane().add(jrb3);this.getContentPane().add(jrb4);this.getContentPane().add(jcb1);this.getContentPane().add(jcb2);this.getContentPane().add(jlabel);this.getContentPane().add(jlabel2);this.getContentPane().setLayout(null);jlabel.setBounds(100,100,300,80);jrb0.setBounds(170,160,100,20);JMenuBar mbar=new JMenuBar();/创建菜单栏mbar.add(jcaidanshezhi);/菜单项添加到菜单栏中mbar.add(jcaidanxinxi);mbar=new JMenuBar();mbar.add(jcaidanshezhi);mbar.add(jcaidanxinxi);setJMenuBar(mbar);/设置菜单栏对显示在窗口中jlabel2.setBounds(70,50,300,300);setSize(450,450);setVisible(true);jtuichuyouxi.addActionListener (new ActionListener () /退出游戏的 public void actionPerformed(ActionEvent e) System.exit (0); );public void itemStateChanged(ItemEvent e)if(jcb1.isSelected()jlabel.setFont(new Font(宋体,Font.BOLD,20);if(jcb2.isSelected()jlabel.setFont(new Font(黑体,Font.ITALIC,40);if(jcb2.isSelected()&jcb1.isSelected()jlabel.setFont(new Font(黑体,Font.ITALIC|Font.BOLD,33);if(!jcb2.isSelected()&!jcb1.isSelected()jlabel.setFont(new Font(黑体,Font.PLAIN,20);public void actionPerformed(ActionEvent e)/貌似是子菜单的方法if(e.getSource()=jrb0)/如果点击新建菜单 kaishiyouxi g=new kaishiyouxi();if(e.getSource()=jdakaitiku)/如果点击新建菜单JOptionPane.showMessageDialog(this,真心话!n和男/女朋友进行到哪一步了n最喜欢在座哪位异性内衣/裤颜色n初吻年龄n自己最丢人的事n最后一次发自内心的笑是什么时候?n愿意为爱情牺牲到什么程度n朋友和男/女朋友那个重要n身上哪个部位最敏感n如果有来生,你选择当?n你会选择Having sex before marriage吗?n如果让你选择做一个电影中的角色,你会选谁呢n如果有一天我和你吵架,你会怎么办?n哭得最伤心的是哪一次为什么?n如果跟你喜欢的人约会,碰到前任的男(女)朋友,会有什么表现?n如果有一天我对你说我爱上你了,你怎么办n大冒险!n背一位异性绕场一周n唱青藏高原最后一句n做一个大家都满意的鬼脸n抱一位异性直到下一轮真心话大冒险结束n像一位异性表白3分钟n与一位异性十指相扣,对视10秒n邀请一位异性与你情歌对唱n做自己最性感、最妩媚的表情或动作n吃下每个人为你夹得菜n跳草裙舞n蹲在凳子上作便秘状n亲某某n神情的吻墙10秒n模仿古代特殊职业女子拉客n模仿脑白金广告,边唱边跳n让他到街上大喊:我的病有救了);/二级窗口显示信息if(e.getSource()=jshezhirenshu)/如果点击新建菜单 shezhirenshu w=new shezhirenshu();if(e.getSource()=jshezhiziti)/如果点击新建菜单shezhiziti t=new shezhiziti(); / this.setVisible(false);/是否关闭二级窗口if(e.getSource()=jyouxiguize)/如果点击新建菜单JOptionPane.showMessageDialog(this,真心话大冒险游戏规则n选定方启动游戏,当转盘指向第二人为被动方n由选定的一方选择真心话或者大冒险n选择真心话,则由胜方随意问输者问题,输者必须全部如实回答;n选择大冒险,则胜方随意出任何行为问题由输方尝试完成);/二级窗口显示信息if(e.getSource()=jzhizuorenyuan)/如果点击新建菜单JOptionPane.showMessageDialog(this,truth or dare1.0n制作人员:xxxxxn在此特别感谢给予我支持的朋友);/二级窗口显示信息class shezhirenshu extends JFrame implements ActionListener /设置人数的界面JRadioButton jrb6,jrb7,jrb8,jrb9;public shezhirenshu()super(复选框事件处理);jrb6 = new JRadioButton(2位玩家);jrb7 = new JRadioButton(4位玩家);jrb8 = new JRadioButton(6位玩家);jrb9 = new JRadioButton(8位玩家);/注册监听器jrb6.addActionListener(this);jrb7.addActionListener(this);jrb8.addActionListener(this);jrb9.addActionListener(this);ButtonGroup bg = new ButtonGroup();bg.add(jrb6);bg.add(jrb7);bg.add(jrb8);bg.add(jrb9);this.getContentPane().add(jrb6);this.getContentPane().add(jrb7);this.getContentPane().add(jrb8);this.getContentPane().add(jrb9);this.getContentPane().setLayout(null);jrb6.setBounds(40,40,100,20);jrb7.setBounds(150,40,100,20);jrb8.setBounds(40,80,100,20);jrb9.setBounds(150,80,100,20);this.setSize(350,200);this.setVisible(true);public void actionPerformed(ActionEvent e)if(e.getSource()=jrb6)Truthordare.r=2;JOptionPane.showMessageDialog(this,当前玩家人数为2人);if(e.getSource()=jrb7)Truthordare.r=4;JOptionPane.showMessageDialog(this,当前玩家人数为4人);if(e.getSource()=jrb8)Truthordare.r=6;JOptionPane.showMessageDialog(this,当前玩家人数为6人);if(e.getSource()=jrb9)Truthordare.r=8;JOptionPane.showMessageDialog(this,当前玩家人数为8人);class shezhiziti extends JFrame implements ActionListener,ItemListener /设置字体二级窗口的界面JRadioButton jrb3,jrb4;JCheckBox jcb1,jcb2;public shezhiziti()super(复选框事件处理);jrb3 = new JRadioButton(红色);jrb4 = new JRadioButton(黄色);jcb1 = new JCheckBox(加粗);jcb2 = new JCheckBox(斜体);/注册监听器jrb3.addActionListener(this);jrb4.addActionListener(this);jcb1.addItemListener(this);jcb2.addItemListener(this);ButtonGroup bg = new ButtonGroup();bg.add(jrb3);bg.add(jrb4);this.getContentPane().add(jrb3);this.getContentPane().add(jrb4);this.getContentPane().add(jcb1);this.getContentPane().add(jcb2);this.getContentPane().setLayout(null);jrb3.setBounds(40,80,100,20);jrb4.setBounds(150,80,100,20);jcb1.setBounds(40,120,100,20);jcb2.setBounds(150,120,100,20);this.setSize(350,200);this.setVisible(true);public void actionPerformed(ActionEvent e)if(e.getSource()=jrb3)Truthordare.jlabel.setForeground(Color.red);Truthordare.jrb0.setForeground(Color.red);if(e.getSource()=jrb4)Truthordare.jlabel.setForeground(Color.yellow);Truthordare.jrb0.setForeground(Color.yellow);public void itemStateChanged(ItemEvent e)if(jcb1.isSelected()Truthordare.jlabel.setFont(new Font(宋体,Font.BOLD,20);if(jcb2.isSelected()Truthordare.jlabel.setFont(new Font(黑体,Font.ITALIC,40);if(jcb2.isSelected()&jcb1.isSelected()Truthordare.jlabel.setFont(new Font(黑体,Font.ITALIC|Font.BOLD,33);if(!jcb2.isSelected()&!jcb1.isSelected()Truthordare.jlabel.setFont(new Font(黑体,Font.PLAIN,20);class kaishiyouxi extends JFrame implements ActionListenerJRadioButton jrb1,jrb2;JLabel jlabel3;int s=(int)(Math.random()*Truthordare.r);public kaishiyouxi()super(复选框事件处理);jrb1 = new JRadioButton(真心话);jrb2 = new JRadioButton(大冒险);jlabel3 = new JLabel(请+s+号玩家选择);/注册监听器jrb1.addActionListener(this);/真心话jrb2.addActionListener(this);/大冒险jlabel3.setFont(new Font(楷体,Font.PLAIN,36);ButtonGroup bg = new ButtonGroup();bg.add(jrb1);bg.add(jrb1);this.getContentPane().add(jlabel3);this.getContentPane().add(jrb1);this.getContentPane().add(jrb2);this.getContentPane().setLayout(null);jrb1.setBounds(60,60,80,20);jrb2.setBounds(150,60,80,20);jlabel3.setBounds(40,100,300,80);this.setSize(350,350);this.setVisible(true);public void actionPerformed(ActionEvent e)/貌似是子菜单的方法if(e.getSource()=jrb1)/如果点击新建菜单 int tureNum=(int)(Math.random()*Truthordare.i);/System.out.println(tureNum+是正确数字);String truth=和男/女朋友进行到哪一步了,最喜欢在座哪位异性,内衣/裤颜色,初吻年龄,自己最丢人的事,最后一次发自内心的笑是什么时候?,愿意为爱情牺牲到什么程度,朋友和男/女朋友那个重要,身上哪个部位最敏感,如果有来生,你选择当?,你会选择Having sex before marriage吗?,如果让你选择做一个电影中的角色,你会选谁呢,如果有一天我和你吵架,你会怎么办?,哭得最伤心的是哪一次为什么?,如果跟你喜欢的人约会,碰到前任的男(女)朋友,会有什么表现?,如果有一天我对你说我爱上你了,你怎么办;JOptionPane.showMessageDialog(this,真心话:+truthtureNum);if(e.getSource()=jrb2)/如果点击新建菜单 int tureNum=(in
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年金融战略的证券考试试题及答案
- 行政管理师考试综合复习资料及答案
- 广东工业大学网络机房基础设施信息化建设项目公开招标文件
- 行政管理师考试与职场发展的关系分析及试题及答案
- 项目管理中的效率提升策略试题及答案
- 广电5G BOSS系统营业受理操作手册
- 银行从业资格证考试全景试题及答案
- 微生物病原体识别技术试题及答案
- 理解证券从业资格证考试的价值取向试题及答案
- 病原体分离培养问题试题及答案
- 荆州市国土空间总体规划(2021-2035年)
- 2024年中考语文复习:文学类文本阅读 考点分类练习题汇编(含解析)
- 胸腔闭式引流护理-中华护理学会团体标准
- 三方安全管理协议书模板
- 2024新沪教版英语初一上单词表
- 幼儿园大班古诗《春夜喜雨》课件
- 2023-2024学年河南省郑州外国语中学八年级(下)期中数学试卷(含解析)
- 人体发育学模考试题与参考答案
- 制造执行系统集成
- 子宫内膜病变的诊治课件
- 新形态一体化教材
评论
0/150
提交评论