我想通过使用下面的代码在随机间隔中运行计时器。问题是,当我这样做,我只能贴1的随机数,我不知道如何用我的代码获取下一个随机数:使用随机时间间隔计时器
using System;
using System.Windows.Forms;
namespace Auto_Typer
{
public partial class AutoTyper : Form
{
public AutoTyper()
{
InitializeComponent();
tmrInterval.Tick += new EventHandler(Interval);
txtInterval.TextChanged += new EventHandler(TextChanged);
txtMin.TextChanged += new EventHandler(TextChanged);
txtMax.TextChanged += new EventHandler(TextChanged);
}
private void TextChanged(object sender, EventArgs e)
{
if (int.Parse(txtInterval.Text) < 1 || int.Parse(txtMin.Text) < 1 || int.Parse(txtMax.Text) < 1)
{
txtInterval.Text = "1";
txtMin.Text = "1";
txtMax.Text = "1";
}
else if (int.Parse(txtInterval.Text) > 100)
{
txtInterval.Text = "100";
txtMin.Text = "100";
txtMax.Text = "100";
}
else if (int.Parse(txtMin.Text) >= int.Parse(txtMax.Text))
{
txtMax.Text = (int.Parse(txtMin.Text) + 1).ToString();
}
}
void Interval(object sender, EventArgs e)
{
SendKeys.Send(txtText.Text + ", " + tmrInterval.Interval + "{enter}");
}
private void btnStart_Click(object sender, EventArgs e)
{
if (tbType.SelectedTab == tbInterval)
{
tmrInterval.Interval = int.Parse(txtInterval.Text) * 1000;
tmrInterval.Enabled = true;
}
if (tbType.SelectedTab == tbRange)
{
Random random = new Random();
tmrInterval.Interval = (random.Next(int.Parse(txtMin.Text), int.Parse(txtMax.Text)) * 1000);
tmrInterval.Enabled = true;
}
}
private void btnStop_Click(object sender, EventArgs e)
{
tmrInterval.Enabled = false;
}
private void btnExit_Click(object sender, EventArgs e)
{
this.Close();
}
}
}
为什么使用当前蜱作为种子获得一个随机值时,你可以调用默认的构造函数,它“初始化一个新的实例Random类的使用时间依赖的默认种子值“? – phoog 2012-01-06 04:44:59