Java实现打字游戏的方法

  介绍

这篇文章主要讲解了Java实现打字游戏的方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

新建一个项目,然后在src里面建一个MyGame.java文件,

把代码粘到刚才新建的MyGame。java,
然后把两张图放到src下,就行了

<强>一、代码

进口javax.swing。*;
  进口javax.swing.event.ChangeEvent;
  进口javax.swing.event.ChangeListener;
  进口java.awt。*;
  进口java.awt.event。*;
  
  公开课MyGame {
  静态UIFrame UIFrame;//主界面
  静态玩笑玩笑;//正式游戏开始界面
  
  公共静态void main (String [] args) {
  uiFrame=new uiFrame(“打字游戏“);
  玩笑=new儿戏();
  }/*游戏主界面*/静态类UIFrame延伸JFrame {
  int宽度=500;
  int高度=700;
  字体X=新字体(“方正舒体“,字体。平原,30);
  JLabel playjb=new JLabel(“开始游戏“);
  JLabel rulejb=new JLabel(“规则“);
  JLabel exitjb=new JLabel(“退出游戏“);
  JFrame f1=new JFrame(“规则“);/*主界面设置*/公共UIFrame(字符串文本){
  超级(文本);
  this.setLayout(空);
  这一点。setSize(宽度、高度);
  this.setLocationRelativeTo(空);
  this.setResizable(假);
  this.getLayeredPane () .setLayout(空);
  JPanel imgPanel=(JPanel) this.getContentPane ();
  imgPanel.setOpaque(假);
  imgPanel。setBounds(0, 0,宽度、高度);
  imgPanel.setLayout(空);=new ImageIcon ImageIcon图标(“src/bg.jpg");
  JLabel标签=new JLabel(图标);
  标签。setBounds (0, 0, this.getWidth (), this.getHeight ());
  icon.setImage (icon.getImage () .getScaledInstance (label.getWidth (), label.getHeight (), Image.SCALE_DEFAULT));
  this.getLayeredPane ()。add(标签,Integer.valueOf (Integer.MIN_VALUE));
  
  标题标题=new标题();//新建一个标题对象
  this.add(标题);//往窗口中加入标题面板
  线程t=新线程(标题);//将标题面板加入一个线程
  t.start();//启动线程,实现标题面板下落
  
  buildButton ();
  add_JB_Listener ();
  setruleJF ();
  this.setVisible(真正的);
  }/*设置按钮规格*/公共空间buildButton () {
  playjb.setForeground (Color.red);
  rulejb.setForeground (Color.red);
  exitjb.setForeground (Color.red);
  playjb.setFont (X);
  rulejb.setFont (X);
  exitjb.setFont (X);
  playjb。setBounds(宽/3,高度* 2/6,宽度/3,50);
  rulejb。setBounds(宽/3,高度* 3/6,宽度/3,50);
  exitjb。setBounds(宽/3,高度* 4/6,宽度/3,50);
  playjb.setHorizontalAlignment (JLabel.CENTER);
  rulejb.setHorizontalAlignment (JLabel.CENTER);
  exitjb.setHorizontalAlignment (JLabel.CENTER);
  
  this.add (playjb);
  this.add (rulejb);
  this.add (exitjb);
  }/*设置规则窗口*/公共空间setruleJF () {
  JLabel text1=new JLabel (“& lt; html> & lt; body>“+“基本规则:点击开始游戏后可以选择生命值,确认后游戏正式开始游戏开始后会自动下落四个三位“+“& lt; br>“+“,,,,,,,,,,”+“数,在输入框中输入其中之一会自动消除这个三位数,“+
  “得分增加,并产生新数字,当数字“+“& lt; br>“+“,,,,,,,,,,”+“掉落到屏幕底部时生命值减一,生命值为0游戏结束。(PS:在输入框中输入空格游戏暂“+“& lt; br>“+“,,,,,,,,,,”+“停,输入任意数字则继续)“;+“& lt; br>“+“& lt; br>“+
  “难度介绍:游戏难度会随着得分的增加而自动增加,也可使用滑块自己调整数字下落难度等级!”+“& lt; br>“+“& lt; br>“+
  “闪烁模式:游戏开始后可以点击开始闪烁按钮来开始闪烁模式,此时数字会隔一段时间消失再出现!”+“& lt; br>“+“& lt; br>“+“好好享受吧!“+“& lt;/body> & lt;/html>“);
  text1.setVerticalAlignment (JLabel.NORTH);//使其文本位于JLabel顶部
  text1。setFont(新字体(“宋体“,字体。平原,20));
  f1.add (text1);//f1为显示规则的窗口
  
  f1.setResizable(假);
  f1。(2 *宽度- 100,高度setSize/2);
  f1.setLocationRelativeTo(空);
  }/*按钮添加监听器*/公共空间add_JB_Listener () {
  playjb。addMouseListener(新MouseAdapter () {
  @Override
  公共空间mouseClicked (MouseEvent e) {
  setVisible(假);
  Chooselife Chooselife=new Chooselife ();
  }
  
  @Override
  公共空间mouseEntered (MouseEvent e) {
  playjb.setBorder (BorderFactory。createMatteBorder (2, 2, 2, 2, Color.LIGHT_GRAY));
  }
  
  @Override
  公共空间mouseExited (MouseEvent e) {
  playjb.setBorder(空);
  }
  });
  
  rulejb。addMouseListener(新MouseAdapter () {
  @Override
  公共空间mouseClicked (MouseEvent e) {
  f1.setVisible(真正的);
  }
  
  公共空间mouseEntered (MouseEvent e) {
  rulejb.setBorder (BorderFactory。createMatteBorder (2, 2, 2, 2, Color.LIGHT_GRAY));
  }
  
  @Override
  公共空间mouseExited (MouseEvent e) {
  rulejb.setBorder(空);
  }
  });
  
  exitjb。addMouseListener(新MouseAdapter () {
  @Override
  公共空间mouseClicked (MouseEvent e) {
  system . exit (0);
  }
  
  公共空间mouseEntered (MouseEvent e) {
  exitjb.setBorder (BorderFactory。createMatteBorder (2, 2, 2, 2, Color.LIGHT_GRAY));
  }
  
  @Override
  公共空间mouseExited (MouseEvent e) {
  exitjb.setBorder(空);
  }
  });
  
  }
  }/*选择生命界面*/静态类Chooselife延伸JFrame {
  静态布尔gamePlayflag=false;//第一次开始游戏则为false,否则为真,
  Chooselife () {
  setTitle(“选择生命值“);
  setAlwaysOnTop(真正);//置于顶部
  setLayout(空);
  setSize (300、100);
  setLocationRelativeTo(空);
  setResizable(假);
  setBotton();//设按钮
  setVisible(真正的);
  }/*设置按钮*/空白setBotton () {
  ButtonGroup生活=new ButtonGroup();//新建按钮组实现互斥
  JRadioButton alt=" Java实现打字游戏的方法"> 

Java实现打字游戏的方法