为什么标签的文字没有变化?

时间:2019-06-17 19:23:58

标签: c# winforms label

所以我开始用Windows窗体编写代码,并尝试制作一个简单的游戏。 我创建了一个分数标签,希望在发生某些情况时可以对其进行更新。

我以为在将int变量转换为字符串之后,我只需要用标签label.Text纠正运行形式代码中的if语句。

private void timer1_Tick(object sender, EventArgs e)
    {
        if (objPos == Position.Up)
        {
            y -= 50;
            if (objSide == Side.Right)
                x += spd;
            else
                x -= spd;
        }
        else if (objPos == Position.Down)
        {
            y += 50;
            if (objSide == Side.Right)
                x += spd;
            else
                x -= spd;
        }
        if (y <= 0)
            y = 0;
        else if (y >= 553 - 80)
            y = 553 - 80;

         if (x >= 1250)
        {  
            x -= spd;
            objSide = Side.Left;
        }
        else if (x <= 0)
        {
            x += spd;
            objSide = Side.Right;
        }
        Rectangle r2 = new Rectangle(x, y, 40, 40);

        if (r2.IntersectsWith(ln3.Bounds) | r2.IntersectsWith(ln4.Bounds) | r2.IntersectsWith(ln5.Bounds) | r2.IntersectsWith(bb1.Bounds) | r2.IntersectsWith(bb2.Bounds) | r2.IntersectsWith(bb3.Bounds)| r2.IntersectsWith(bb4.Bounds))
        {
            tmrMoving.Stop();
            EndGame End = new EndGame();
            End.Show();
            this.Hide();
        }
        if (x == 1250 )
        {
            spd += 50;
            score++;
            string s= Convert.ToString(score);
            Score.Text = s;
            Score.Refresh();

        }
        Invalidate();
    }

此代码位于正在运行的游戏形式的Form.cs中。其中还有更多if语句,可以更改对象的位置,因此我希望它可以工作,但无效。那我该怎么办呢? 编辑:发布了一些附加代码。如果有人知道如何创建图片框数组,以便可以更有效地使用IntersectsWith,那就太好了。

0 个答案:

没有答案