C#编写一个大字母游戏,详细代码,不懂问博主。。。。
using System;
using System.Drawing;
using System.Windows.Forms;
using System.Media; namespace dazimuyouxi_2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int i = , j = ; private void Form1_Load(object sender, EventArgs e)
{
label1.BackColor = Color.Green;
label2.BackColor = Color.Red;
label1.Text = "分数:" + i;
label2.Text = "错误:" + j;
this.KeyPress += Form1_KeyPress;
this.comboBox1.SelectedIndex = ;
}
bool istrue = true;
SoundPlayer s = new SoundPlayer("GRAY2WEA.WAV");
private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{ foreach (Control item in Panel1.Controls)
{
if (item.Text == e.KeyChar.ToString().ToUpper())
{
if (istrue == true)
{
item.Tag = "bj";
feiji.Location = new Point(new Size(item.Left + item.Width / - feiji.Width / , feiji.Top));
Label zd = new Label();
zd.Size = new Size(, );
zd.Location = new Point(new Size(feiji.Left + feiji.Width / - zd.Width / + , feiji.Top));
zd.Text = item.Text;
zd.Tag = "zidan";
zd.Image = imageList2.Images[];
zd.AutoSize = true;
Panel1.Controls.Add(zd);
istrue = false;
}
}
}
}
Random a = new Random();
private void timer1_Tick(object sender, EventArgs e)
{
Label lab = new Label();
lab.BackColor = Color.Transparent;
lab.Size = new Size(, );
lab.Text = Convert.ToChar(a.Next(, )).ToString();
lab.ForeColor = Color.FromArgb(a.Next(), a.Next(), a.Next());
lab.Font = new Font("微软雅黑", );
lab.Location = new Point(new Size(a.Next(, Panel1.Width - lab.Width - ), ));
lab.AutoSize = true;
lab.Tag = "zimu";
this.Panel1.Controls.Add(lab);
}
private void timer2_Tick(object sender, EventArgs e)
{
foreach (Control item in Panel1.Controls)
{
if (item.GetType().Name == "Label")
{
if (item.Tag.ToString() == "zimu" || item.Tag.ToString() == "bj")
{
item.Top += ;
if (item.Bottom >= feiji.Top)
{
item.Dispose();
j += ;
label2.Text = "错误:" + j;
}
}
if (item.Tag.ToString() == "zidan")
{
item.Top -= ;
foreach (Control xz in Panel1.Controls)
{
if (xz.GetType().Name == "Label")
{
if (xz.Tag.ToString() == "bj")
{
if (xz.Bottom >= item.Top)
{
PictureBox pb = new PictureBox();
pb.Image = imageList1.Images[];
pb.BackColor = Color.Transparent;
pb.Location = item.Location;
pb.Tag = ;
pb.Size = new Size(, );
pb.SizeMode = PictureBoxSizeMode.StretchImage;
//pb.BackColor = Color.Red;
Panel1.Controls.Add(pb);
timer3.Start();
s.Play();
item.Tag = ;
xz.Dispose();
item.Dispose();
i += ;
label1.Text = "分数:" + i;
istrue = true;
}
}
}
}
}
}
}
} private void timer3_Tick(object sender, EventArgs e)
{
foreach (Control item in Panel1.Controls)
{
if (item.GetType().Name == "PictureBox" && item.Tag != null)
{
int n = int.Parse(item.Tag.ToString());
n++;
if (n > )
{
item.Dispose();
return;
}
((PictureBox)item).Image = imageList1.Images[n];
((PictureBox)item).Tag = n;
}
}
} private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
comboBox1.DropDownStyle = ComboBoxStyle.DropDownList;
if (comboBox1.Text == "长平之战")
{
this.BackgroundImage = new Bitmap("2.jpg");
}
if (comboBox1.Text == "赤壁之战")
{
this.BackgroundImage = new Bitmap("3.jpg");
}
if (comboBox1.Text == "蓝色星球")
{
this.BackgroundImage = Image.FromFile("1.jpg");
}
} private void button1_Click(object sender, EventArgs e)
{
if (button1.Text == "开始")
{
timer1.Start();
timer2.Start();
button1.Text = "暂停";
}
else
{
button1.Text = "开始";
timer1.Stop();
timer2.Stop();
}
} private void timer4_Tick(object sender, EventArgs e)
{ foreach (Control item in Panel1.Controls)
{
if (item.GetType().Name == "Label" && item.Tag.ToString() == "zidan")
{
item.BackColor = Color.Transparent;
int m = int.Parse(((Label)item).Image.Tag.ToString());
m++;
if (m > )
{
item.Dispose();
return;
}
((Label)item).Image = imageList2.Images[m];
((Label)item).Image.Tag = m;
}
}
}
}
}
C#编写一个大字母游戏,详细代码,不懂问博主。。。。的更多相关文章
- python新手如何编写一个猜数字小游戏
此文章只针对新手,希望大家勿喷,感谢!话不多说先上代码: import random if __name__ == '__main__': yourname = input("你好! 你的名 ...
- 25.Qt Quick QML-500行代码实现"合成大西瓜游戏"
"合成大西瓜"这个游戏在年前很火热,还上过微博热搜,最近便玩了一阵还挺有意思的,所以研究了一下小球碰撞原理,自己亲自手写碰撞算法来实现一个合成大西瓜游戏.并支持任意大小布局,你想玩 ...
- 编写一个算法,将非负的十进制整数转换为其他进制的数输出,10及其以上的数字从‘A’开始的字母表示
编写一个算法,将非负的十进制整数转换为其他进制的数输出,10及其以上的数字从‘A’开始的字母表示. 要求: 1) 采用顺序栈实现算法: 2)从键盘输入一个十进制的数,输出相应的八进制数和十六进制数. ...
- 代码实现:编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n
import java.util.Scanner; //编写一个函数,输入n为偶数时,调用函数求1/2+1/4+...+1/n,当输入n为奇数时,调用函数1/1+1/3+...+1/n public ...
- 如何建立一个完整的游戏AI
http://blog.friskit.me/2012/04/how-to-build-a-perfect-game-ai/ 人工智能(Artificial Intelligence)在游戏中使用已经 ...
- 编写快速、高效的JavaScript代码
许多Javascript引擎都是为了快速运行大型的JavaScript程序而特别设 计的,例如Google的V8引擎(Chrome浏览器,Node均使用该引擎).在开发过程中,如果你关心你程序的内存和 ...
- Java图形界面实战案例——实现打字母游戏
实现打字母的游戏 这次这个案例能够说是头几次所讲的内容的一个技术汇总,主要是 运用了几大块的知识.我们先来定义一下案例的背景:在一个300*400的窗口上.有10个随机产生的字母下落,在键盘上敲击字母 ...
- GJM : 各大开发游戏引擎
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...
- 使用Vue编写点击数字小游戏
使用vue编写一个点击数字计时小游戏,列入你在文本框中输入3,点击开始会生成一个3行3列的表格,表格数据为1-9随机排列,这时候从1开始点击,按顺序点到9,当按正确顺序点击完毕,会提示所用的时间,如果 ...
随机推荐
- Linux查询一台机器的IP地址和其对应的域名
Linux查询一台机器的IP地址和其对应的域名 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ nslookup > 127.0.0.1 Server: ...
- <训练赛> 垃圾陷阱
垃圾陷阱 时间限制: 1 Sec 内存限制: 128 MB提交: 78 解决: 38[提交][状态][讨论版] 题目描述 卡门--农夫约翰极其珍视的一条Holsteins奶牛--已经落了到&quo ...
- 微信小程序之公共函数引入
// 加载配置文件 const config = require('../config.js'); module.exports = { //提醒弹框 REMIND:function(that = ' ...
- C#属性的使用--C#基础
1.属性的作用:保护字段,对字段取值与赋值进行限定 2.属性的使用: _name(属性名)public [对应字段类型] 属性名Name{ get{return _name;} set{_name=v ...
- Mybatis【逆向工程,缓存,代理】知识要点
前言 本文主要讲解Mybatis的以下知识点: Mybatis缓存 一级缓存 二级缓存 与Ehcache整合 Mapper代理 使用Mapper代理就不用写实现类了 逆向工程 自动生成代码 Mybat ...
- [BZOJ1058][ZJOJ2007]报表统计
BZOJ Luogu 题目描述 Q的妈妈是一个出纳,经常需要做一些统计报表的工作.今天是妈妈的生日,小Q希望可以帮妈妈分担一些工作,作为她的生日礼物之一. 经过仔细观察,小Q发现统计一张报表实际上是维 ...
- telnet命令使用详解
telnet命令用于登录远程主机,对远程主机进行管理.telnet因为采用明文传送报文,安全性不好,很多Linux服务器都不开放telnet服务,而改用更安全的ssh方式了.但仍然有很多别的系统可能采 ...
- JavaWeb开发环境搭建Eclipse配置Tomcat
转载请标明出处:http://blog.csdn.net/wu_wxc/article/details/48651251本文出自[吴孝城的CSDN博客] 工具: Eclipse官网下载:http:// ...
- ssr panel魔改前端登陆面板配置邮件服务
1.注册 打开mailgun官网http://www.mailgun.com/ (昨天他反应打开比较慢,所以你得有点耐心,或者跟换你的DNS试试) QQ截图20140731095618.png 点 ...
- PHP 接口 返回构造函数
我们写接口的时候,需要返回json数据,并且里面有错误码,错误信息 还有要返回的数据,这里我构造了一个函数 这里是针对TP5来写的,自己可以根据自己的框架来修改 这样就可以在返回的时候直接用info函 ...