为什么不能间隔性的显示画图?
时间:2011-10-30
来源:互联网
我想做的是 画一次图,显示后,间隔一秒 再画一次显示。
但是,我下面的代码 总是白色的背景,等到了十秒之后才显示图片。
我加了个messagebox这时候 跳一次框,然后就能看见窗体中显示的图片。
为什么会这样呢?、谢谢大家!
C# code
但是,我下面的代码 总是白色的背景,等到了十秒之后才显示图片。
我加了个messagebox这时候 跳一次框,然后就能看见窗体中显示的图片。
为什么会这样呢?、谢谢大家!
C# code
private void button1_Click(object sender, RoutedEventArgs e) { for (int i = 0; i < 10; i++) { if (i % 2 == 0) { Ellipse el = new Ellipse(); el.Height = 30; el.Width = 60; el.Fill = Brushes.Red; el.Stroke = Brushes.Black; canvas1.Children.Add(el); } else { //System.Threading.Thread.Sleep(1000); Ellipse el = new Ellipse(); el.Height = 30; el.Width = 60; el.Fill = Brushes.Yellow; el.Stroke = Brushes.Green; canvas1.Children.Add(el); } System.Threading.Thread.Sleep(1000); // MessageBox.Show("aa"); } }
作者: stone1314 发布时间: 2011-10-30
http://blog.csdn.net/wangwenzhuang/article/details/6078938
作者: stone1314 发布时间: 2011-10-30
在一个方法中,程序默认的方式是 代码全部运行完毕之后,才在空间显示结果
比如:在一个方法中写入:
label.txt="12";
//todo
label.txt="34"; 程序运行过程中,不会显示12 在显示34 而是直接就显示34
所以你只能看到最后一张图片
而当你加入messagebox后,当出现这代码,程序就会将结果显示在用户控件上,所以你能看到每张图片
解决办法就是:强制刷新事件
Application.DoEvents();//强制让系统执行所有事件
比如:在一个方法中写入:
label.txt="12";
//todo
label.txt="34"; 程序运行过程中,不会显示12 在显示34 而是直接就显示34
所以你只能看到最后一张图片
而当你加入messagebox后,当出现这代码,程序就会将结果显示在用户控件上,所以你能看到每张图片
解决办法就是:强制刷新事件
Application.DoEvents();//强制让系统执行所有事件
作者: liujh850717 发布时间: 2011-12-28
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28