图片框的高度向下延伸

问题描述

制作了Flappy Bird类型的游戏。有2个管道,顶部1个,底部1个。我应用了随机函数来更改管道的高度。当高度改变时,它从底部改变。因此,我的代码适用于顶部管道,但不适用于底部管道,因为它进入地下或地面之上。如何解决? (PipeBottom和Pipetop是图片框)

            Bird.Top += gravity;
            PipeBottom.Left -= pipespeed;
            Pipetop.Left -= pipespeed;
            scoreBox.Text = "score: " + score;

            Random r = new Random();
            int j = r.Next(-100,100);

            if (PipeBottom.Left < -100)
            {
                PipeBottom.Left = 800;
                Pipetop.Height -= j;
                score++;
            }

            if (Pipetop.Left < -100)
            {
                Pipetop.Left = 800;
                Pipetop.Height += j;
                score++;
            }

解决方法

是的,就是这样。

0,0在左上角。放置在位置100,200的控件似乎距标题栏的距离大约是其距窗口左边缘的距离的两倍。如果将高度设置为300,则其底部距离标题栏500像素。如果然后将高度设置为600,则底部将距离标题栏800像素。控件的顶部不动

如果您希望位置100,200处的某物从高度300变到高度400,并且看起来像它已经向窗口顶部移动了100像素,则可以将其高度设置为400 到100,100(移动并增长)

,

没关系,我知道了。使用Picturebox.Top从y轴减去我要添加到高度的数量。