Random 如何得到一个随机数倒计时

Random 如何得到一个随机数倒计时,random,count,numbers,Random,Count,Numbers,我试图让一个随机数倒计时到零,但我一直在给我一个随机数。然后每秒钟它就会生成一个介于4和11之间的新随机数,并且不会倒计时。如果有人能帮忙,我们将不胜感激。提前谢谢! 在这里输入代码 private void timer1_Tick(object sender, EventArgs e) { Random nuber = new Random(); i = nuber.Next(4, 11); i--;

我试图让一个随机数倒计时到零,但我一直在给我一个随机数。然后每秒钟它就会生成一个介于4和11之间的新随机数,并且不会倒计时。如果有人能帮忙,我们将不胜感激。提前谢谢! 在这里输入代码

            private void timer1_Tick(object sender, EventArgs e)
    {

        Random nuber = new Random();
        i = nuber.Next(4, 11);
        i--;

        textBox1.Text = i.ToString();

        if(i == 0)
        {
            Form1 f1 = new Form1();
            Form2 f2 = new Form2();

            f2.Show();
            f1.Close();
        }

    }

如果我理解您试图做什么,那么您需要在初始化阶段,在静态全局变量中,在循环之外生成数字。然后,计时器滴答声将倒计时。请注意,f1是创建然后关闭的,它从不显示,因此是多余的。此外,您每次都在创建一个新表单,这可能不是您想要的

基本上,您只需要移动两个语句:

random nuber = new Random();
i = number.next();

无论你在哪里创建计时器。

如果你想要一个较低的数字,你需要降低种子数,这似乎很明显吗?这不是我要问的,不是吗?当问这样一个琐碎的问题时,不要对试图帮助你的人讽刺。你需要给我们看更多的代码,我来试试。游戏在Form1上,当计时器归零时,它将打开Form2,这是我正在制作的游戏的主菜单。但是,由于某种原因,Form1并没有关闭,Form2打开了,Form1只是坐在后面。这就是你所说的创建一个新表单的意思吗?我需要看更多的代码来理解正在发生的事情,也许我的表单注释是不相关的。但是如果你想让随机数倒计时,你需要在循环外分配它,比如当你创建计时器时,然后把它存储在初始化代码和倒计时代码都可以到达的地方。请接受我的回答,我需要要点:关于种子的评论也没有什么意义,因为种子与随机数生成器实际生成的值的范围无关。出于某种原因,它不会让我将随机生成移出循环,上面写着“WindowsFormApplication1.Form1.i”是一个“字段”,但它的用法类似于“抱歉,我打扰了你,我需要睡眠”。