C#事件的两个参数的介绍(sender , e)

1、sender事件发起者,表示那边触发事件这边接收事件,//sender事件的发起者,根据这个senter找到事件的发起者(就相当于当找到对应密码才可进入)
eg:Timer tubaozha=(Timer)sender;//更具前面的类型转换并起名再赋类型。前面事件类型不同,则触发事件类型不同

注:全局变量时,不用sender,局部变量嵌套使用要sender,找事件的发起者
2、e参数,代表指定的键/代表事件对象/代表第三方/事件触发对象(谁触发代表谁)为事件提供数据
(1)e.KeyChar//设置或获取与按下键对应的字符

private void Form1_KeyPress(object sender, KeyPressEventArgs e)
       {
           //sender事件发起者
           //e参数,代表指定的键/代表事件对象/代表第三方/事件触发对象(谁触发代表谁)
           // e.KeyChar//设置或获取与按下键对应的字符

           //因为是多个键,所以循环便利
           foreach (Control item in YX.Controls)
           {
               if (item.Text==e.KeyChar.ToString()&&item.Tag.ToString()=="zm")//item.Tag.ToString()=="zm"字母时对应产生一个子弹,不会同时产生多个
            {
                item.Tag = "zmbiaoji";//该标记,就不会产生多余子弹
                tupianplsyer.Left = item.Left + item.Width / 2 - tupianplsyer.Width / 2;
                //同样的中轴线,字母的距离left的距离加上,字母宽的一半,减上飞机图片的一半就是,飞机left的距离

                //创建子弹
                PictureBox zidan = new PictureBox();
                zidan.Tag = "zd";
                zidan.Size = new Size(8, 18);
                zidan.SizeMode = PictureBoxSizeMode.StretchImage;
                zidan.Image = Image.FromFile(@"../../img/Ammo1.png");
                zidan.Left = tupianplsyer.Left + tupianplsyer.Width / 2 - zidan.Width / 2;

                zidan.Top = tupianplsyer.Top -zidan.Height;
                YX.Controls.Add(zidan);
                //跳出当前事件
                return;//跳出整个事件,如果给return下面写则全部跳出//判断只出现一个

            }
        } 

    }
  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值