A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 黑马-张扬 中级黑马   /  2012-12-12 20:02  /  836 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

winform 程序 窗体有个标签 开个线程去执行一个复杂的计算 当计算完事,改变标签的文本内容 我的代码如下 但是貌似最好这样写  
那天有人问我,线程通信的事  ... 我在想这里怎么应用
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 ThreadDemo
{
     public partial class Form1 : Form
     {
         public Form1()
         {
             InitializeComponent();
         }
         private void Form1_Load(object sender, EventArgs e)
         {
             Control.CheckForIllegalCrossThreadCalls = false;//这样做是不是也不好
             lblMessage.Text = "处理复杂计算...";
         }
         private void btnOperater_Click(object sender, EventArgs e)
         {
             Thread thread = new Thread(Cal);
             thread.IsBackground = true;
             thread.Start();
         }
         private void Cal()
         {
             for (int i = 0; i <= 100000; i++)
             {
                 txtResult.Text = i.ToString();
             }
             lblMessage.Text = "计算完毕";//这句是不是不应该放这里
         }
   

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

您需要登录后才可以回帖 登录 | 加入黑马