【发布时间】:2015-03-30 08:49:46
【问题描述】:
我正忙于自己的一个项目,并且在某个部分遇到了麻烦。我想要一个随机的在随机 X 轴位置生成我的图片框。我会给你发一张我的应用程序外观的图片,下面是一些代码。
我对编程非常陌生,所以“高级”和非常智能的解决方案对我来说仍然未知。如果遮住这个问题。请善待:)
如您所见。所有黑条相互对齐,Y 轴和最重要的 X 轴保持不变。所以游戏是可以预见的..它只有一个底部的黑色图片框需要通过的开口..
这是我为“敌人/黑条”的位置所做的方法 顺便说一句,我在顶部添加了一个“int position on 0”的字段
public int VijandPositie() // methode om de positie van de vijand te bepalen
{
positie += 1;
return positie;
}
我在这个 timer_tick 事件中实现了这个方法。
private void timer1_Tick(object sender, EventArgs e) // timer voor het te laten bewegen van de vijanden
{
Vijand1.Top = VijandPositie();
Vijand2.Top = VijandPositie();
Vijand3.Top = VijandPositie();
Vijand4.Top = VijandPositie();
Vijand5.Top = VijandPositie();
Vijand6.Top = VijandPositie();
Vijand7.Top = VijandPositie();
Vijand8.Top = VijandPositie();
if (Vijand1.Top >= gbSpeelVeld.Height || Vijand2.Top >= gbSpeelVeld.Height || Vijand3.Top >= gbSpeelVeld.Height || Vijand4.Top >= gbSpeelVeld.Height || Vijand5.Top >= gbSpeelVeld.Height || Vijand6.Top >= gbSpeelVeld.Height || Vijand7.Top >= gbSpeelVeld.Height || Vijand8.Top >= gbSpeelVeld.Height)
{
positie = 0; // zorgt ervoor dat de positie gereset wordt op 0 en dan begint de pijl weer van boven af aan
score = Convert.ToInt32(lblScore.Text); // score wordt geconverteerd naar de label
score = score + 1;
lblScore.Text = score.ToString();
}
黑条到达屏幕末端后,它们将再次回到顶部,但 X 轴位置保持不变。我知道我还没有在里面放一个随机数..所以我知道这行不通。但我不知道在哪里或如何实现随机以在 X 轴上随机获取黑条(Y 轴不太重要 IMO)。
提前谢谢各位!
【问题讨论】: