C# 同一程序中的多个计时器
我正在尝试制作一个程序,其中有两个计时器,以不同的间隔运行。目前我有一个定时器工作良好,我需要有另一个运行。我的第一个计时器代码如下所示:C# 同一程序中的多个计时器,c#,timer,C#,Timer,我正在尝试制作一个程序,其中有两个计时器,以不同的间隔运行。目前我有一个定时器工作良好,我需要有另一个运行。我的第一个计时器代码如下所示: private void startButton_Click(object sender, RoutedEventArgs e) { Random rand = new Random(); int ranMin = rand.Next(1,24); int ranSec = rand.Next(
private void startButton_Click(object sender, RoutedEventArgs e)
{
Random rand = new Random();
int ranMin = rand.Next(1,24);
int ranSec = rand.Next(0, 59);
System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
dispatcherTimer.Interval = new TimeSpan(0, ranMin, ranSec);
dispatcherTimer.Start();
min.Content = ranMin;
sec.Content = ranSec;
openP();
}
private void dispatcherTimer_Tick(object sender, EventArgs e)
{
**code for timer in here
}
这很好,但现在我需要另一个计时器以1秒的间隔运行,使用不同的代码,当我尝试通过将所有Dispatchermer转换为Dispatchermer2来复制此计时器时,我遇到了错误。我不确定您在做什么,您应该发布错误,但以下代码适用于您提供的代码:
private void startButton_Click(object sender, RoutedEventArgs e)
{
Random rand = new Random();
int ranMin = rand.Next(1,24);
int ranSec = rand.Next(0, 59);
System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
dispatcherTimer.Interval = new TimeSpan(0, ranMin, ranSec);
dispatcherTimer.Start();
// New timer
System.Windows.Threading.DispatcherTimer dispatcherTimer2 = new System.Windows.Threading.DispatcherTimer();
dispatcherTimer2.Tick += new EventHandler(dispatcherTimer2_Tick);
dispatcherTimer2.Interval = new TimeSpan(0, 0, 1);
dispatcherTimer2.Start();
min.Content = ranMin;
sec.Content = ranSec;
openP();
}
private void dispatcherTimer_Tick(object sender, EventArgs e)
{
//code for timer in here
}
private void dispatcherTimer2_Tick(object sender, EventArgs e)
{
//code for timer2 in here
}
小贴士帮助你自己,如果你发现你输入的单词出现了错误,并且没有把错误放在问题中,那么你就很难回答你,也就不太可能得到答案。所以,请把你遇到的错误写进你的问题中。请避免在你的文章标题和感谢信中使用标签。另外请注意,visual studio标记用于与VS或其他与VS直接相关的功能集成,而不是用于可以在VS中编写的代码,因为它将应用于此网站上99%的问题。旁注:在示例中使用Random的方式是随机的,不会产生随机结果。请查看关于您的代码问题的最高评分问题:啊,这很有效,我犯了一个愚蠢的错误,行dispatchermer2.Tick+=neweventhandledispatchermer2\u Tick;最后一点是给出了一个错误,说它不存在,但那是因为我没有下面的私有无效线。。。。不管怎样,它现在工作得很好,谢谢你的支持help@user3524727这些事情发生了!