public Form1()
{
this.Paint += new PaintEventHandler(f1_Paint);
}
private void f1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
Random r = new Random();
int m;
while (true)
{
m = r.Next(4);
switch (m.ToString(""))
{
case "3": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 30, 200, 35, 200); break;
case "2": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 60, 200, 65, 200); break;
case "1": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 90, 200, 95, 200); break;
case "0": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;
default: g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;
// default: break;
}
System.Threading.Thread.Sleep(1000);
}
}为什么运行起来会卡死................不是sleep了吗
{
this.Paint += new PaintEventHandler(f1_Paint);
}
private void f1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
Random r = new Random();
int m;
while (true)
{
m = r.Next(4);
switch (m.ToString(""))
{
case "3": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 30, 200, 35, 200); break;
case "2": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 60, 200, 65, 200); break;
case "1": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 90, 200, 95, 200); break;
case "0": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;
default: g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;
// default: break;
}
System.Threading.Thread.Sleep(1000);
}
}为什么运行起来会卡死................不是sleep了吗
解决方案 »
- webbrowser由JS生成的COOKIE怎么取到?
- 关于控件遍历的问题,三分求高手.
- 急!javascript调用C#函数问题
- 关于DataGridView的CellEndEdit事件的问题!
- 求教Com控件DBGrid的使用方法
- 60分雪地跪求,关于c#和flash的问题
- 可不可以同时实现windows NT验证和form验证
- 问一个关于赋值的问题
- WPF 浏览器调试默认是非IE浏览器 ,删除其他浏览器后,无法调试
- 刚接触c#问一个傻瓜问题:如何用键盘为int变量赋值,用Console?
- c#能否拷贝到窗体图象
- 请问在.net2005下水晶报表怎么实现 批量邦定数据?? 我想把dataset的每行数据循环邦定到报表上 急。。。在线等
所以程序不停的划线和休眠
所以死掉
bool exit=true;
while (exit)
{
m = r.Next(4);
switch (m.ToString(""))
{
case "3": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 30, 200, 35, 200); break;
case "2": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 60, 200, 65, 200); break;
case "1": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 90, 200, 95, 200); break;
case "0": g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;
default: g.DrawLine(new Pen(Color.CornflowerBlue, 8), 120, 200, 125, 200); break;
// default: break;
}
System.Threading.Thread.Sleep(1000);
exit=false;
}
不只是死循环的问题,如果是的话把sleep换成DoEvents就可以了
而且还是窗体刷新事件的子过程