打字游戏代码
模仿金山打字游戏代1

模仿金山打字游戏代码!!!打字游戏!!import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JPanel;public class Mtt {public static void main(String args[]){Frame w=new Frame();w.setSize(400,500);w.setBackground(Color.GREEN);MyPanel3 mp=new MyPanel3();w.add(mp);w.addKeyListener(mp);mp.addKeyListener(mp);Thread t=new Thread(mp);t.start();w.show();}}class MyPanel3 extends JPanel implements Runnable,KeyListener,MouseListener{ int m=300;int n=450;int count=2000;char[] c=new char[10];int[] x=new int [10];int[] y=new int[10];public MyPanel3(){for(int i=0;i<10;i++){//随机下落字母c[i]=(char)(Math.random()*26+97);x[i]=(int)(Math.random()*370);y[i]=(int)(Math.random()*400);}}public void paint(Graphics g){Font f=new Font("",Font.BOLD,16);g.setFont(f);Image img=new ImageIcon("3.jpg").getImage();g.drawImage(img,0,0,1024,760,null);if(count>0){for(int i=0;i<10;i++){g.drawString(""+c[i],x[i],y[i]);}g.setColor(Color.RED);g.drawString("成绩是:"+count,20,20);g.setColor(Color.BLUE);}else{Font ff=new Font("",Font.BOLD,36);g.setFont(ff);g.setColor(Color.RED);g.drawString("GAME OVER",100,200);}}public void run() {while(true){for(int i=0;i<10;i++){y[i]++;if(y[i]>500){y[i]=0;x[i]=(int)(Math.random()*370);c[i]=(char)(Math.random()*26+97);count-=100;}}if(count<0){return;}try{Thread.sleep(10);}catch(Exception e){}repaint();}}public void keyTyped(KeyEvent e) {public void keyPressed(KeyEvent e) {char cc =e.getKeyChar();int yy=-1;int index=-1;for(int i=0;i<10;i++){if(cc==c[i]){if(yy<y[i]){yy=y[i];index=i;}}}if(index>-1){y[index]=0;x[index]=(int)(Math.random()*370);c[index]=(char)(Math.random()*26+97);count+=10;}else { count-=100;}}private Object max(int i) {// TODO Auto-generated method stubreturn null;}public void keyReleased(KeyEvent e) {// TODO Auto-generated method stub}public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub}public void mousePressed(MouseEvent e) { }public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub}public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stubpublic void mouseExited(MouseEvent e) {// TODO Auto-generated method stub}public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub}}。
用Java制作一个简单的打字游戏

用Java制作一个简单的打字游戏Java是一种功能强大的编程语言,可以用来开发各种类型的应用程序,包括游戏。
在本篇文章中,我将向您介绍如何使用Java制作一个简单的打字游戏。
首先,我们需要设置游戏的基本框架。
创建一个Java类,命名为TypingGame。
在TypingGame类中,我们将使用Java Swing库来创建游戏窗口和图形界面。
import javax.swing.*;import java.awt.*;import java.awt.event.*;public class TypingGame extends JFrame {private JLabel titleLabel;private JLabel wordLabel;private JTextField inputField;private JButton startButton;private JButton resetButton;private JLabel scoreLabel;private int score;public TypingGame() {initComponents();}private void initComponents() {setTitle("打字游戏");setDefaultCloseOperation(EXIT_ON_CLOSE);setLayout(new FlowLayout());titleLabel = new JLabel("欢迎来到打字游戏!");add(titleLabel);wordLabel = new JLabel();wordLabel.setFont(new Font("Arial", Font.BOLD, 24)); add(wordLabel);inputField = new JTextField(10);add(inputField);startButton = new JButton("开始");startButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) {startGame();}});add(startButton);resetButton = new JButton("重置");resetButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent evt) {resetGame();}});add(resetButton);scoreLabel = new JLabel("得分: 0");add(scoreLabel);pack();}private void startGame() {String[] words = {"Java", "编程", "游戏", "挑战", "乐趣"}; int randomIndex = (int) (Math.random() * words.length); String randomWord = words[randomIndex];wordLabel.setText(randomWord);inputField.requestFocus();inputField.setText("");inputField.addKeyListener(new KeyAdapter() {public void keyTyped(KeyEvent evt) {char typedChar = evt.getKeyChar();if (typedChar == randomWord.charAt(0)) {score++;scoreLabel.setText("得分: " + score);randomIndex = (int) (Math.random() * words.length); randomWord = words[randomIndex];wordLabel.setText(randomWord);inputField.setText("");inputField.requestFocus();}}});}private void resetGame() {score = 0;scoreLabel.setText("得分: " + score);}public static void main(String[] args) {SwingUtilities.invokeLater(new Runnable() {public void run() {new TypingGame().setVisible(true);}});}}上述代码展示了一个简单的打字游戏的实现。
简单打字游戏编程

简单打字游戏编程字数:1500字随着计算机技术的迅速发展,各种各样的游戏应运而生,其中打字游戏是一类经典且受欢迎的游戏类型。
在这篇文章中,我将介绍一个简单的打字游戏的编程实现,带领读者一起学习如何利用编程语言来开发一个简易的打字游戏。
在开始之前,我们首先需要确定使用的编程语言。
在本篇文章中,我将使用Python语言来进行游戏的开发。
Python是一种易于学习和使用的编程语言,非常适合初学者。
编写打字游戏的代码之前,请确保你已经安装了Python,并且具备基本的编程知识。
首先,我们需要为游戏设计一个基本的界面。
在这个游戏中,我们将在屏幕上显示一个随机的英文单词,并要求玩家尽快输入正确的单词。
为了实现这个功能,我们需要使用Python的一个叫做`random`的模块来生成随机单词。
下面是一个简单的代码示例:```pythonimport randomdef generate_word():words = ['apple', 'banana', 'cat', 'dog', 'elephant'] # 可以根据需要扩展单词列表return random.choice(words)if __name__ == '__main__':word = generate_word()print(word)```在上面的代码中,`generate_word`函数用于生成一个随机的单词。
我们事先定义了一个单词列表`words`,其中包含了一些常见的英文单词。
然后,使用`random.choice`函数从这个列表中随机选择一个单词,并将其返回。
在主程序部分,我们调用`generate_word`函数并打印生成的单词。
接下来,我们需要实现游戏的主循环。
在游戏开始后,程序会不断生成新的单词,并等待玩家输入。
玩家需要尽快输入正确的单词,否则游戏将结束。
好玩的vbs代码

好玩的VBScript代码VBScript(Visual Basic Scripting Edition)是一种基于VB语言的脚本语言,它可以用来创建简单的Windows应用程序、网页脚本和系统管理脚本等。
VBScript 是一种通用的脚本语言,可以用来实现各种有趣的功能。
在本文中,我们将介绍一些好玩的VBScript代码,展示其强大的功能和娱乐价值。
1. 电脑妖怪第一个VBScript代码是创建一个电脑妖怪。
该代码将在电脑屏幕上创建一个随机移动的图形,并发出奇怪的声音。
Set wshShell = CreateObject("WScript.Shell")Set objShell = CreateObject("Shell.Application")Set objWMI = GetObject("winmgmts:\\.\root\cimv2")DowshShell.Run "mshta vbscript:CreateObject(""SAPI.SpVoice"").Speak(""Boo!"") (Close)"objShell.MinimizeAllobjShell.UndoMinimizeAllFor Each objDesktop in objWMI.InstancesOf("Win32_Desktop")objDesktop.SetWallpaper "C:\path\to\your\image.jpg"Nextwscript.sleep 100Loop通过运行该代码,将在桌面上创建一个随机移动的图形,并且屏幕上会突然发出吓人的声音。
这个代码可以用作恶作剧或者给你的朋友带来一些惊喜。
2. 无限弹窗第二个VBScript代码是创建一个无限弹窗的例子。
Java版打字练习游戏源码

Java版打字练习游戏源码代码如下import java.applet.Applet;import java.applet.AudioClip;import java.awt.Dimension;import java.awt.Font;import java.awt.Toolkit;import javax.swing.JFrame;import javax.swing.JPanel;import java.awt.Rectangle;import javax.swing.BorderFactory;import javax.swing.JButton;import javax.swing.JOptionPane;import javax.swing.JSlider;import javax.swing.JLabel;import javax.swing.UIManager;import javax.swing.event.ChangeEvent;import javax.swing.event.ChangeListener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.io.File;import java.util.Vector;public class Main extends JFrame implements Runnable {private static final long serialVersionUID = -2831332650077025158L;JPanel contentPane;JPanel jPanel1 = new JPanel();JButton jButton1 = new JButton();JSlider jSlider1 = new JSlider();JLabel jLabel1 = new JLabel();JButton jButton2 = new JButton();JLabel jLabel2 = new JLabel();int count = 1, rapidity = 5;int zhengque = 0, cuowu = 0;int rush[] = { 10, 20, 30 };int rush_count = 0;char list[] = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L','M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y','Z', '1', '2', '3', '4', '5', '6', '7', '8', '9' };Vector number = new Vector();String paiduan = "true";AudioClip Musci_anjian, Music_shibai, Music_chenggong;public Main() {try {setDefaultCloseOperation(EXIT_ON_CLOSE);// -----------------声⾳⽂件---------------------Musci_anjian = Applet.newAudioClip(new File("sounds//anjian.wav").toURL());Music_shibai = Applet.newAudioClip(new File("sounds//shibai.wav").toURL());Music_chenggong = Applet.newAudioClip(new File("sounds//chenggong.wav").toURL());// ---------------------------------------jbInit();} catch (Exception exception) {exception.printStackTrace();}}/*** 初始化** @throws Exception*/private void jbInit() throws Exception {contentPane = (JPanel) getContentPane();contentPane.setLayout(null);setSize(new Dimension(588, 530));setTitle("Frame Title");jPanel1.setBorder(BorderFactory.createEtchedBorder());jPanel1.setBounds(new Rectangle(4, 4, 573, 419));jPanel1.setLayout(null);jButton1.setBounds(new Rectangle(277, 442, 89, 31));jButton1.setText("开始");jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));jSlider1.setBounds(new Rectangle(83, 448, 164, 21));jSlider1.setMaximum(100);jSlider1.setMinimum(0);jSlider1.setValue(95);jLabel1.setText("速度");jLabel1.setBounds(new Rectangle(35, 451, 39, 18));jButton2.setBounds(new Rectangle(408, 442, 89, 31));jButton2.setText("结束");jButton2.addActionListener(new Frame1_jButton2_actionAdapter(this));jLabel2.setText("第⼀关:10个");jLabel2.setBounds(new Rectangle(414, 473, 171, 21));contentPane.add(jPanel1);contentPane.add(jButton2);contentPane.add(jButton1);contentPane.add(jSlider1);contentPane.add(jLabel1);contentPane.add(jLabel2);this.addKeyListener(new MyListener());jButton1.addKeyListener(new MyListener());jSlider1.addKeyListener(new MyListener());jSlider1.addChangeListener(new ChangeListener() {public void stateChanged(ChangeEvent e) {rapidity = 100 - jSlider1.getValue();}});}/*** 主线程*/public void run() {number.clear();zhengque = 0;cuowu = 0;paiduan = "true";while (count <= rush[rush_count]) {try {Thread t = new Thread(new Tthread());t.start();count += 1;Thread.sleep(50 + (int) (Math.random() * 500)); // ⽣产下组停顿时间// 最快0.05秒.最慢0.5秒} catch (InterruptedException e) {e.printStackTrace();}}while (true) { // 等待最后⼀个字符消失if (number.size() == 0) {break;}}if (zhengque == 0) { // 为了以后相除..如果全部正确或者错误就会出现错误. 所以.. zhengque = 1;}if (paiduan.equals("true")) { // 判断是否是⾃然结束if (cuowu <= 2) { // 错误不超过2个的过关JOptionPane.showMessageDialog(null, "恭喜你过关了");rush_count += 1; // ⾃动加1关if (rush_count < rush.length) {if (rapidity > 10) { // 当速度⼤于10的时候在-5提加速度.怕速度太快 rapidity -= 5; // 速度⾃动减10毫秒jSlider1.setValue(rapidity); // 选择位置}Thread t = new Thread(this);t.start();} else {JOptionPane.showMessageDialog(null, "⽜B...你通关了..");rush_count = 0;count = 0;}} else {JOptionPane.showMessageDialog(null, "请再接再励");rush_count = 0;count = 0;}} else {rush_count = 0;count = 0;}}public void jButton1_actionPerformed(ActionEvent e) {Thread t = new Thread(this);t.start();}public void jButton2_actionPerformed(ActionEvent e) {count = rush[rush_count] + 1;paiduan = "flase";}/*** 字符下移线程*/class Tthread implements Runnable {public void run() {boolean fo = true;int Y = 0, X = 0;JLabel show = new JLabel();show.setFont(new java.awt.Font("宋体", Font.PLAIN, 33));jPanel1.add(show);X = 10 + (int) (Math.random() * 400);String parameter = list[(int) (Math.random() * list.length)] + "";Bean bean = new Bean();bean.setParameter(parameter);bean.setShow(show);number.add(bean);show.setText(parameter);while (fo) {// ---------------------字符下移--------------------show.setBounds(new Rectangle(X, Y += 2, 33, 33));try {Thread.sleep(rapidity);} catch (InterruptedException e) {e.printStackTrace();}if (Y >= 419) {fo = false;for (int i = number.size() - 1; i >= 0; i--) {Bean bn = ((Bean) number.get(i));if (parameter.equalsIgnoreCase(bn.getParameter())) {cuowu += 1;jLabel2.setText("正确:" + zhengque + "个,错误:" + cuowu + "个");number.removeElementAt(i);Music_shibai.play();break;}}}}}}/*** 键盘监听器**/class MyListener extends KeyAdapter {public void keyPressed(KeyEvent e) {String uu = e.getKeyChar() + "";for (int i = 0; i < number.size(); i++) {Bean bean = ((Bean) number.get(i));if (uu.equalsIgnoreCase(bean.getParameter())) {zhengque += 1;number.removeElementAt(i);bean.getShow().setVisible(false);jLabel2.setText("正确:" + zhengque + "个,错误:" + cuowu + "个"); Music_chenggong.play();break;}}Musci_anjian.play();}}public static void main(String[] args) {try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception exception) {exception.printStackTrace();}Main frame = new Main();Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();Dimension frameSize = frame.getSize();if (frameSize.height > screenSize.height) {frameSize.height = screenSize.height;}if (frameSize.width > screenSize.width) {frameSize.width = screenSize.width;}frame.setTitle("java版打字练习软件");frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);frame.setVisible(true);}}class Frame1_jButton2_actionAdapter implements ActionListener {private Main adaptee;Frame1_jButton2_actionAdapter(Main adaptee) {this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jButton2_actionPerformed(e);}}class Frame1_jButton1_actionAdapter implements ActionListener {private Main adaptee;Frame1_jButton1_actionAdapter(Main adaptee) {this.adaptee = adaptee;}public void actionPerformed(ActionEvent e) {adaptee.jButton1_actionPerformed(e);}}/*** 下落的字符类**/class Bean {String parameter = null;JLabel show = null;public JLabel getShow() {return show;}public void setShow(JLabel show) {this.show = show;}public String getParameter() {return parameter;}public void setParameter(String parameter) {this.parameter = parameter;}} 效果图<ignore_js_op>详细说明:。
打字游戏编程教程

打字游戏编程教程一、引言在当今数字时代,计算机编程已经成为一项重要的技能。
打字游戏是一种有趣且有实际意义的编程项目,它可以帮助我们提高打字速度和准确性。
本篇文章将介绍如何编写一个简单的打字游戏。
二、环境准备在开始编写打字游戏之前,我们需要一个合适的开发环境。
首先,确保你拥有一台安装了Python编程语言的电脑。
其次,我们需要安装一个名为`pygame`的Python库,它可以帮助我们创建游戏窗口和处理用户输入。
三、创建游戏窗口开始编写代码之前,我们首先需要创建一个游戏窗口。
在Python中,我们可以使用`pygame`库中的`display`模块来完成这个任务。
以下是创建游戏窗口的简单代码:```pythonimport pygamepygame.init()width, height = 800, 600screen = pygame.display.set_mode((width, height))pygame.display.set_caption("打字游戏")```四、处理用户输入接下来,我们需要处理用户的键盘输入。
在打字游戏中,玩家需要在给定的时间内输入尽可能多的单词。
为了实现这个功能,我们可以使用`pygame`库中的`event`模块来监听用户的按键事件。
以下是处理用户输入的代码示例:```pythonimport pygamefrom pygame.locals import *import randompygame.init()width, height = 800, 600screen = pygame.display.set_mode((width, height))pygame.display.set_caption("打字游戏")# 处理用户键盘输入def handle_input():for event in pygame.event.get():if event.type == QUIT:pygame.quit()if event.type == KEYDOWN:# 处理按键事件if event.key == K_ESCAPE:pygame.quit()if event.key == K_RETURN:# 处理回车事件passif event.unicode.isalpha():# 处理字母输入事件pass# 游戏主循环while True:handle_input()pygame.display.update()```五、生成随机单词一个好的打字游戏需要有一个单词列表,并在每一轮游戏中随机选择一个单词供玩家打字。
(完整word版)打字游戏源代码

DefaultFrame .java 程序import java.awt.*;import java.awt.color.*;import java.awt.event.*;public class DefaultFrame extends Frame {public static final int GAME_WIDTH = 600;public static final int GAME_HEIGHT = 400;public static void main(String[] args) {DefaultFrame defaultFrame1 = new DefaultFrame();uchFrame();}private void lauchFrame() {this.setBounds(150, 150, GAME_WIDTH, GAME_HEIGHT);this.setBackground(Color.DARK_GRAY);this.setResizable(false);this.setVisible(true);this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent arg0) {System.exit(0);}});KeyMonitor km = new KeyMonitor(this);this.addKeyListener(km);}class KeyMonitor extends KeyAdapter {private DefaultFrame defaultFrame;public KeyMonitor (DefaultFrame d) {defaultFrame = d;}public void keyPressed(KeyEvent e) {if(e.getKeyCode() == KeyEvent.VK_SPACE) {defaultFrame.setVisible(false);new GameFrame().launchFrame();}}}public void paint(Graphics g) {g.setFont(new Font("a",Font.BOLD,20));g.setColor(Color.blue);g.drawString("打字小游戏", 250, 100);g.drawString("看看30秒时间你能打多少个字母", 150, 200);g.drawString("按空格键开始游戏", 200, 300);}}GameFrame.java程序import java.awt.*;import java.awt.event.*;import java.util.*;import java.util.List;public class GameFrame extends Frame {public static final int GAME_WIDTH = 600;public static final int GAME_HEIGHT = 400;public static int GAME_LEVEL = 2;public static int charNum = 0; //记录总字符数public static int hitNum = 0; //记录打中的字符数List myChar = new ArrayList();private boolean timeUp = false;private Image offScreenImage = null;public void launchFrame() {this.setBounds(150, 150, GAME_WIDTH, GAME_HEIGHT);this.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent arg0) {System.exit(0);}});this.setVisible(true);KeyMonitor keyMonitor = new KeyMonitor();this.addKeyListener(keyMonitor);Thread t = new Thread(new CreaterChar());t.start();new Thread(new CountTime()).start();new Thread(new Repaint()).start();}class KeyMonitor extends KeyAdapter {public void keyPressed(KeyEvent e) {for(int i = 0; i < myChar.size();i++) {MyChar aChar = (MyChar)myChar.get(i);aChar.keyPressed(e);}}}public void paint(Graphics g) {g.setColor(Color.red);g.setFont(new Font("a",Font.BOLD,10));// g.drawString("屏幕中字符数" + myChar.size(), 500, 40);g.drawString("打中的字符数"+ hitNum, 450, 60);for (int i = 0; i < myChar.size(); i++) {MyChar aChar = (MyChar)myChar.get(i);if(aChar.isLive())aChar.draw(g);else {myChar.remove(myChar.get(i));}}if(timeUp == true) {g.setColor(Color.blue);g.drawString("Time Up", 200, 150);g.drawString("打中的字符数"+ hitNum,200,200);g.drawString("按F1重新开始",200,250);}}// 双缓冲技术public void update(Graphics g) {if (offScreenImage == null) {offScreenImage = this.createImage(GAME_WIDTH,GAME_HEIGHT);}Graphics gOffScreen = offScreenImage.getGraphics();Color c = gOffScreen.getColor();gOffScreen.setColor(Color.GREEN);gOffScreen.fillRect(0, 0, GAME_WIDTH, GAME_HEIGHT);paint(gOffScreen);gOffScreen.setColor(c);g.drawImage(offScreenImage, 0, 0, null);}class CreaterChar implements Runnable {public void run() {int sleep = 0;switch (GAME_LEVEL) {case 2:sleep = 1000;}while (!timeUp) {try {MyChar newchar = new MyChar();MyChar newchar1 = new MyChar();MyChar newchar2 = new MyChar();myChar.add(newchar);myChar.add(newchar1);myChar.add(newchar2);charNum ++;repaint();Thread.sleep(sleep);} catch (InterruptedException e) {e.printStackTrace();}}repaint();}}class CountTime implements Runnable {public void run() {try {Thread.sleep(30000);} catch (InterruptedException e) {e.printStackTrace();}timeUp = true;}}class Repaint implements Runnable {public void run() {while(timeUp == false) {try {Thread.sleep(100);} catch (InterruptedException e) {// TODO 自动生成catch 块e.printStackTrace();}repaint();}}}}MyChar.java程序import java.awt.Graphics;import java.awt.color.*;import java.awt.event.KeyEvent;import java.awt.*;public class MyChar {String charString = "abcdefghijklmnopqrstuvwxyz";int x,y;int index;String str;char c;boolean live;public MyChar () {x = new java.util.Random().nextInt();if(x < 0)x = x * (-1);x = (x % 115 + 1) * 5;y = 50;index = new java.util.Random().nextInt();if (index < 0)index = index * (-1);index = index %26;c = charString.charAt(index);str = String.valueOf(c);live = true;}public void draw(Graphics g) {g.setColor(Color.BLACK);g.setFont(new Font("a",Font.BOLD,20));g.drawString(str,x ,y );y = y + 10;if(y > GameFrame.GAME_HEIGHT - 40) {live = false;}}public void keyPressed(KeyEvent e) {if(e.getKeyChar() == c) {GameFrame.hitNum++;live = false;}if(e.getKeyCode() == KeyEvent.VK_F1) {GameFrame.charNum = 0;GameFrame.hitNum = 0;new GameFrame().launchFrame();}}public boolean isLive() {return live;}}。
C#实现打字小游戏

C#实现打字⼩游戏本⽂实例为⼤家分享了C#实现打字⼩游戏的具体代码,供⼤家参考,具体内容如下using System;using System.Drawing;using System.Windows.Forms;namespace 打字游戏{public partial class Form1 : Form{public Form1(){InitializeComponent();}//创建飞机PictureBox plan = new PictureBox();Button kaiguan = new Button();Timer flytime = new Timer();//动画事件//创建的得分的labelLabel df = new Label();int x = 0;//实例化⾎条Label xt = new Label();Label xt1 = new Label();int xuetiao = 150;int dl = 0;//产⽣字母private void Form1_Load(object sender, EventArgs e){this.KeyPreview = true;//游戏区域this.WindowState = FormWindowState.Maximized;this.Text = "打字游戏";panel1.Size = new Size(1000, 760);panel1.BackColor = Color.White;timer1.Start();bird.Tag = "b";bird.Width = 229;bird.Height = 111;bird.SizeMode = PictureBoxSizeMode.StretchImage;//panel1.Controls.Add(bird);bird.Image = imageList1.Images[0];flytime.Interval = 80;//事件的添加:+、=、tab、tab;flytime.Tick += Flytime_Tick;plan.Tag = "plan";plan.Size = new Size(100, 100);////plan.BackColor = Color.Red;plan.Location = new Point(panel1.Width / 2 - plan.Width / 2, panel1.Height - plan.Height); plan.Image = Image.FromFile(@"../../img/BP03.png");panel1.Controls.Add(plan);kaiguan.Text = "开始游戏";kaiguan.Location = new Point(1200,300);this.Controls.Add(kaiguan);kaiguan.Click += Kaiguan_Click;}private void Kaiguan_Click(object sender, EventArgs e){if (kaiguan.Text=="开始游戏"){flytime.Start();timer2.Start();timer3.Start();kaiguan.Text = "暂停游戏";}else if (kaiguan.Text=="暂停游戏"){flytime.Stop();timer2.Stop();timer3.Stop();kaiguan.Text = "开始游戏";}//得分栏df.Size = new Size(130, 20);df.Location = new Point(1138, 210);df.Tag = "df";df.Text = "得分:0分";df.AutoSize = true;this.Controls.Add(df);//⾎条栏xt.Size = new Size(130,20);xt.Location = new Point(1200,500);xt.BackColor = Color.White;xt1.Size = new Size(130,20);xt1.Location=new Point(1200,500);xt1.BackColor = Color.Red;xt.Tag = "xt";xt1.Tag = "xt1";this.Controls.Add(xt);this.Controls.Add(xt1);}PictureBox bird = new PictureBox();//显⽰动画的容器;//动画事件int index = 0;private void Flytime_Tick(object sender, EventArgs e){index++;bird.Image = imageList1.Images[index];if (index >= 10){index = -1;}Random r = new Random();//鸟的移动private void timer2_Tick(object sender, EventArgs e){bird.Left += 2;if (bird.Left >= panel1.Width){bird.Left = -bird.Width;}}//字母⽣成private void timer1_Tick_1(object sender, EventArgs e){if (bird.Left >= 0 && bird.Left <= panel1.Width - bird.Width){//每⼀个lebel是⼀个字母;Label lb = new Label();lb.Text = ((char)r.Next(97, 123)).ToString();lb.Font = new Font("", r.Next(20, 40));lb.Tag = "lb";lb.AutoSize = true;lb.ForeColor = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255));lb.Top = bird.Height;lb.Left = bird.Left + bird.Width / 2 - lb.Width / 2;panel1.Controls.Add(lb);}}//字母下落private void timer3_Tick(object sender, EventArgs e){//遍历循环语法foreach (Control item in panel1.Controls){//每⼀个对象都有⼀个⽅法GetTypeif (item.GetType().Name == "Label"){item.Top += 3;if (item.Top >= panel1.Height){item.Dispose();xuetiao -= 10;xt.Width = xuetiao;dl++;if (xt.Width==0){flytime.Stop();timer2.Stop();timer3.Stop();MessageBox.Show("Game over");}}}if(item.GetType().Name== "PictureBox"){if (item.Tag.ToString()=="zd"){item.Top -= 7;if (item.Top+item.Height<=-item.Height){item.Dispose();}foreach (Control ad in panel1.Controls){if (ad.Tag.ToString()=="lba"){if (ad.Top+ad.Height>=item.Top&&item.Left==ad.Left+ad.Width/2-item.Width/2) {item.Dispose();ad.Dispose();x += 10;df.Text = x.ToString()+"分";PictureBox baz = new PictureBox();//装播放爆炸图⽚的盒⼦;baz.Tag = 0;baz.Image = imageList2.Images[0];baz.Size = new Size(90,90);baz.SizeMode = PictureBoxSizeMode.StretchImage;baz.Location = new Point(ad.Left + ad.Width / 2 - baz.Width/2,ad.Top+ad.Height/2-baz.Height/2) ; panel1.Controls.Add(baz);Timer bofang = new Timer();bofang.Start();bofang.Interval = 60;bofang.Tag = baz;bofang.Tick += Bofang_Tick;;}}}}}}}private void Bofang_Tick(object sender, EventArgs e){Timer mnb = (Timer)sender;PictureBox picture = (PictureBox)mnb.Tag;picture.Image = imageList2.Images[(int)picture.Tag];picture.Tag = (int)picture.Tag + 1;if ((int)picture.Tag>=31){picture.Dispose();mnb.Dispose();}}//按键消除private void Form1_KeyPress(object sender, KeyPressEventArgs e){//在按下任意按键的时候,判断⼀下本次按键值是否有对应的字母;//按键键值//被动⾏为foreach (Control item in panel1.Controls){if (item.GetType().Name == "Label"){if (item.Text == e.KeyChar.ToString()&&item.Tag.ToString()=="lb"){item.Tag = "lba";plan.Left = item.Left + item.Width / 2 - plan.Width / 2;//创建⼦弹PictureBox bullet = new PictureBox();bullet.Tag = "zd";bullet.Size = new Size(6,20);bullet.Image = Image.FromFile(@"../../img/Ammo4.png");bullet.Location = new Point(plan.Left + plan.Width / 2 - bullet.Width / 2, plan.Top - bullet.Height);bullet.SizeMode = PictureBoxSizeMode.StretchImage;panel1.Controls.Add(bullet);return;}}}}}}以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
pictureBox1.Visible = false;
}
}
}
KeyPressEventArgs e)
{
if(e.KeyChar == 13 || e.KeyChar ==32) //判
断是否按下了回车键或空格键
if (textBox1.Text.Trim() ==
labWord.Text.Trim()) //判断用户的输入是否正确
{
typeRight++; //对的字数的统计
using System;
using System.Collections.G Nhomakorabeaneric;
using ponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
InitializeComponent();
}
private void timer1_Tick(object sender,
EventArgs e)
{
if (labWord.Top > this.Height)
labWord.Top = 0;
labWord.Top += 2;
}
private void textBox1_KeyPress(object sender,
namespace打字游戏3
{
public partial class Form1 : Form
{
int typeRight = 0;//统计对了的字数
int typeWrong = 0; //统计错了的字数
float correctRate = 0; //统计正确率
float typeSpeed = 0;//统计速度
label1.Text = typeRight.ToString();
//显示对的字数
textBox1.Text = ""; //清空文本框
k = myran.Next(0, 20); //产生随机
数
//k++; //调整k的值,使练习的内容随
机出现
labWord.Text = mystr[k]; //显示下一
String[] mystr = new String[20];
int k = 0;
Random myran = new Random();
Graphics mygra; //创建画布对象
Pen mypen = new Pen(Color.Blue,2); //创建画笔
对象
public Form1()
mystr[10] = "啸";
mystr[11] = "核";
mystr[12] = "幅";
mystr[13] = "射";
mystr[14] = "余";
mystr[15] = "震";
mystr[16] = "海";
mystr[17] = "污";
mystr[18] = "染";
mystr[19] = "完";
{
labWord.Text = mystr[0];
}
private void textBox1_TextChanged(object
sender, EventArgs e)
{
}
private void textBox1_KeyUp(object sender,
KeyEventArgs e)
{
mygra = this.CreateGraphics();
textBox1.Width/2,textBox1.Top,
labWord.Left +
labWord.Width/2,labWord.Top + labWord.Height );
labWord.Top = 0;
}
}
private void Form1_Load(object sender,
EventArgs e)
个练习内容
pictureBox1.Left = labWord.Left;
pictureBox1.Top = labWord.Top;
pictureBox1.Visible = true;
mygra = this.CreateGraphics(); //指
定在当前窗体绘画
mygra.DrawLine(mypen,textBox1.Left +
{
mystr[0] = "安";
mystr[1] = "来";
mystr[2] = "食";
mystr[3] = "快";
mystr[4] = "全";
mystr[5] = "了";
mystr[6] = "大";
mystr[7] = "地";
mystr[8] = "震";
mystr[9] = "海";