using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Threading;
namespace shibai
{
public partial class Form3 : Form
{
delegate void SetLabelTextDelegate(Label lb, String text);
SetLabelTextDelegate setLabelTextDel;
bool isStart = false;
Thread[] ths = new Thread[6];
Random r = new Random(DateTime.Now.Millisecond);
public Form3()
{
InitializeComponent();
setLabelTextDel = new SetLabelTextDelegate(this.setText);
}
private void button1_Click(object sender, EventArgs e)
{
if (isStart == false)
{
isStart = true;
button1.Text = "停止";
label8.Text = "";
for (int i = 0; i < 6; i++)
{
ths [i]=new Thread (new ParameterizedThreadStart (this.changeNumber ));
ths [i].Start ((Label )this.Controls ["label"+(i+1).ToString ()]);
}
}
else
{
isStart =false;
button1.Text = "开启";
label8.Text =string .Format ("中奖号码:{0} {1} {2} {3} {4} {5}", label1.Text ,label2 .Text ,label3 .Text ,label4 .Text ,label5.Text ,label6.Text ,label7 .Text );
}
}
private void changeNumber(object label)
{
Label lb = (Label)label;
int number = 0;
while (isStart)
{
number = r.Next(10);
this.Invoke(setLabelTextDel, lb, number.ToString());
Thread.Sleep(100);
}
}
private void setText(Label lb, string text)
{
lb.Text = text;
}
private void Form3_FormClosing(object sender, FormClosingEventArgs e)
{
if (isStart)
{
MessageBox.Show("请先停止摇奖机,再点关闭");
e.Cancel = true;
}
}
}
}