打字游戏窗体初始化:
public int k;
PictureBox pic =
new PictureBox();
//生成飞机控件
private void Form1_Load(object sender, EventArgs e)
{
this.KeyPreview =
true;
//始终让窗体获取焦点
timer1.Start();
timer2.Start();
pic.Size =
new Size(
100,
100);
//设置飞机属性
pic.BackgroundImage = Image.FromFile(
“C:/Users/Admin/Desktop/第二打/第二打/bin/Deb我爱线报网ug/IMGE/99.jpg”);
//引用图片的位置
pic.BackgroundImageLayout = ImageLayout.Stretch;
//设置图片布局为拉伸
pic.Left = pictureBox1.Width /
2 – pic.Width /
2;
pic.Top = pictureBox1.Height – pic.Height;
pic.Tag =
“kk”;
//进行标记
pictureBox1.Controls.Add(pic);
}
添加时间控件1:
private void timer2_Tick(object sender, EventArgs e)
{
for我爱线报网each (Control item
in pictureBox1.Controls)
{
if (item.Tag.ToString() ==
“mu” || item.Tag.ToString() ==
“xia”)
//tag为我们想要的zimu
{
item.Top +=
8;
//控制其下降10个像素
if (item.Top >= pictureBox1.Height)
//为了避免子弹多发,当第一次字母落下时将其资源释放掉
{
item.Dispose();
//释放资源
}
}
if (item.Tag.ToString() ==
“zi”)
{
item.Top -=
我爱线报网30;
//子弹上升8像素
foreach (Control zimu
in pictureBox1.Controls)
{
if (zimu.Tag.ToString() ==
“xia”)
//改变后可以知道是否是按下的那个字母
{
if (item.Top <= zimu.Top + zimu.Height && item.Left + item.Width /
2 == zimu.Left + zimu.Width /
2)
//判断其高度
{
item.Dispose();
//释放资源
zimu.Dispose();
//释放资
//设置爆炸效果
PictureBox bm =
newPictureBox();
我爱线报网
bm.Tag =
“bomd”;
bm.Size =
new Size(
60,
60);
bm.Image = imageList1.Images[
0];
//存储爆炸的图片
bm.Tag =
0;
bm.Left = zimu.Left + zimu.Width /
2 – bm.Width /
2;
bm.Top = zimu.Top + zimu.Height /
2 – bm.Height /
2;
bm.SizeMode = PictureBoxSizeMode.Zoom;
pictureBox1.Controls.Add(bm);
Syst
我爱线报网em.Windows.Forms.Timer Mm =
new System.Windows.Forms.Timer();
//计时器用于爆炸图片
Mm.Start();
Mm.Interval =
50;
Mm.Tick += Mm_Tick;
//timer事件
Mm.Tag = bm;
//将其打包直接丢给下一个引用
}
}
}
添加时间控件2:
private void timer1_Tick(object sender, EventArgs e)
{
Label mu =
new Label();
//实例化label用于存储字母
mu.Text = ((
char)QQ.Next
我爱线报网(
97,
123)).ToString() + ((
char)QQ.Next(
97,
123)).ToString();
//随机生成小写字母
mu.Font =
new Font(
“仿体”, QQ.Next(
25,
35));
//字母的字体设置
mu.ForeColor = Color.FromArgb(QQ.Next(
255), QQ.Next(
255), QQ.Next(
255));
//设置字母的随机颜色
mu.Left = QQ.Next(pictureBox1.Width – mu.Width);
//设置位置
mu.AutoSize =
true;
//自适应大小
mu.Tag =
“mu”;
//进行标记mu.
我爱线报网BorderStyle = BorderStyle.None;
mu.BackColor = Color.FromArgb(QQ.Next(
255), QQ.Next(
255), QQ.Next(
255));
pictureBox1.Controls.Add(mu);
}
时间控件3:
private void Mm_Tick(object sender, EventArgs e)
{
System.Windows.Forms.Timer bom = (System.Windows.Forms.Timer)sender;
//事件的发起者PictureBox photo
我爱线报网= (PictureBox)bom.Tag;
//转化为picturebox类型
photo.Image = imageList1.Images[(
int)photo.Tag];
//选择照片
photo.Tag = (
int)photo.Tag +
1;
//照片加1
if ((
int)photo.Tag >
5)
{
bom.Dispose();
photo.Dispose();
}
}
//设置随机数用于字母的一系列随机
Random pP =
new Random();
Random QQ =
new Random();
按下键盘对应字母:
private void For我爱线报网m1_KeyPress(object sender, KeyPressEventArgs e)
{
foreach (Control item
in pictureBox1.Controls)
//遍历寻找装zimu控件
{
if (item.Text == textBox1.Text.ToString() && item.Tag.ToString() ==
“mu”)
//按下的键盘字母对应zimu
{
item.Tag =
“xia”;
//改变按下的字母的tag
pic.Left = item.Left + item.Width /
2 – pic.Width /
2;
//设置飞机移动PictureBox dzd =
我爱线报网new PictureBox();
//装子弹的容器
dzd.Size =
new Size(
20,
20);
//不能调换顺序,必须有大小才可以运用
dzd.Left = pic.Left + pic.Width /
2 – dzd.Width /
2;
//设置子弹的位置
dzd.BackgroundImage = Image.FromFile(
“C:/Users/Admin/Desktop/第二打/第二打/bin/Debug/IMGE/66.jpg”);
//设置子弹的图片
dzd.BackgroundImageLayout = ImageLayout.Stretch;
//设置图片的拉伸dzd.Top = pic.T
我爱线报网op –
50;
//设置子弹的高度
dzd.Tag =
“zi”;
pictureBox1.Controls.Add(dzd);
return;
//防止相同字母一次发射多个子弹
}
}
}
输入键盘对应字母:
private void textBox1_TextChanged(object sender, EventArgs e)
{
foreach (Control item
in pictureBox1.Controls)
//遍历寻找装zimu控件
{
if (item.Text == textBox1.Text.ToString() && item.Tag.ToString() ==
“mu”)
/我爱线报网/按下的键盘字母对应zimu
{
item.Tag =
“xia”;
//改变按下的字母的tag
pic.Left = item.Left + item.Width /
2 – pic.Width /
2;
//设置飞机移动
PictureBox dzd =
new PictureBox();
//装子弹的容器
dzd.Size =
new Size(
20,
20);
//不能调换顺序,必须有大小才可以运用
dzd.Left = pic.Left + pic.Width /
2 – dzd.Width /
2;
//设置子弹的位置
dzd.BackgroundImage = Image.FromFile(
“C:/Users/Adm我爱线报网in/Desktop/第二打/第二打/bin/Debug/IMGE/66.jpg”);
//设置子弹的图片
dzd.BackgroundImageLayout = ImageLayout.Stretch;
//设置图片的拉伸
dzd.Top = pic.Top –
50;
//设置子弹的高度
dzd.Tag =
“zi”;
pictureBox1.Controls.Add(dzd);
if (textBox1.TextLength ==
2)
textBox1.Text =
“”;
return;
//防止相同字母一次发射多个子弹
}
else if (textBox1.TextLength ==
3)
我爱线报网 textBox1.Text =
“”;
}
#头条文章养成计划#
温馨提示:本站提供的一切软件、教程和内容信息都来自网络收集整理,仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负,版权争议与本站无关。用户必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!