最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#利用子線程刷新主線程分享教程

 更新時(shí)間:2012年11月22日 11:17:33   作者:  
本文將詳細(xì)介紹C#利用子線程如何刷新主線程,需要了解更多的朋友可以參考下
要求:如下圖,使用線程操作
1、實(shí)時(shí)顯示當(dāng)前時(shí)間
2、輸入加數(shù)和被加數(shù),自動(dòng)出現(xiàn)結(jié)果
 
分析:兩個(gè)問(wèn)題解決的方式一致,使用子線程進(jìn)行時(shí)間操作和加法操作,然后刷新主線程的控件顯示結(jié)果
復(fù)制代碼 代碼如下:

using System;
using System.Threading;
using System.Windows.Forms;
namespace WinThread
{
public partial class frmMain : Form
{
public frmMain()
{
InitializeComponent();
}
/// <summary>
/// 初始化
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void frmMain_Load(object sender, EventArgs e)
{
// 控件初始化
this.txtOne.Text = "0";
this.txtSecond.Text = "0";
// 顯示時(shí)間操作
Thread showTimeThread = new Thread(new ThreadStart(GetTime));
showTimeThread.IsBackground = true;
showTimeThread.Start();
// 加法操作
Thread addThread = new Thread(new ThreadStart(Add));
addThread.IsBackground = true;
addThread.Start();
}
#region 顯示時(shí)間操作
/// <summary>
/// 取得實(shí)時(shí)時(shí)間
/// </summary>
private void GetTime()
{
try
{
while (true)
{
string currentTime = string.Format("{0}.{1}", DateTime.Now.ToLongTimeString(), DateTime.Now.Millisecond);
ShowTime(currentTime);
Application.DoEvents();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
// 定義顯示時(shí)間操作委托,用于回調(diào)顯示時(shí)間方法
delegate void ShowTimeCallBack(string str);
/// <summary>
/// 實(shí)時(shí)顯示時(shí)間
/// </summary>
/// <param name="str"></param>
private void ShowTime(string str)
{
if (this.txtCurrentTime.InvokeRequired)
{
ShowTimeCallBack showTimeCallBack = new ShowTimeCallBack(ShowTime);
this.Invoke(showTimeCallBack, new object[] { str });
}
else
{
this.txtCurrentTime.Text = str;
}
}
#endregion
#region 加法操作
/// <summary>
/// 加法操作
/// </summary>
private void Add()
{
try
{
while (true)
{
int i = Convert.ToInt32(this.txtOne.Text.Trim());
int j = Convert.ToInt32(this.txtSecond.Text.Trim());
ShowResult((i + j).ToString());
Application.DoEvents();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
// 定義加法操作委托,用于回調(diào)加法操作方法
delegate void ShowResultCallBack(string result);
/// <summary>
/// 顯示結(jié)果
/// </summary>
/// <param name="result"></param>
private void ShowResult(string result)
{
if (this.txtResult.InvokeRequired)
{
// 寫(xiě)法1
//ShowResultCallBack showResultCallBack = new ShowResultCallBack(ShowResult);
//this.Invoke(showResultCallBack, new object[] { result });
// 寫(xiě)法2
//使用委托來(lái)賦值
this.txtResult.Invoke(
//委托方法
new ShowResultCallBack(ShowResult),
new object[] { result });
}
else
{
this.txtResult.Text = result;
}
}
#endregion
}
}

是不是很簡(jiǎn)單呢?

相關(guān)文章

最新評(píng)論

延庆县| 栾川县| 汽车| 鸡东县| 安达市| 鸡泽县| 定边县| 湘阴县| 昌图县| 彭山县| 四平市| 清镇市| 汾西县| 北流市| 隆尧县| 天门市| 宽城| 休宁县| 永平县| 海门市| 青海省| 建始县| 保山市| 彭水| 南康市| 和政县| 枣庄市| 仁布县| 和静县| 娱乐| 手游| 海城市| 梅河口市| 凤阳县| 泰州市| 海盐县| 仪征市| 正蓝旗| 安溪县| 曲阜市| 新化县|