Timer laver rod i mit lille simple system.
Jeg har en lille simpel winform applikation som tæller ned fra 3 og så trækker lod mellem 3 personer.Følgende kode:
private void button1_Click(object sender, System.EventArgs e)
{
counter = 3;
timer1.Interval = 1000;
timer1.Enabled = true;
//timer1.Start();
timer1.Tick +=new EventHandler(timer1_Tick);
}
private void timer1_Tick(object sender, EventArgs e)
{
if (counter == 0)
{
timer1.Enabled = false;
timer1.Stop();
this.KastTerning();
}
else
{
label1.Text = counter.ToString();
counter = counter - 1;
}
}
private void KastTerning()
{
Random ran = new Random();
int d = ran.Next(3);
switch(d)
{
case 0:
label1.Text = Personer.Claus.ToString();
timer1.Enabled = false;
break;
case 1:
label1.Text = Personer.Thomas.ToString();
timer1.Enabled = false;
break;
case 2:
label1.Text = Personer.Per.ToString();
timer1.Enabled = false;
break;
}
}
Programmet virker fint nok første gang jeg trykker på knappen. Men anden gang skriver den pludselig kun 2 og så kører den funktionet kastTerning().
Hvis jeg debugger får jeg af vide at der ikke er noget "source code available for the current location"
Hvad er det lige jeg gør galt?
