using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
namespace WebSend
{
public partial class Form1 : Form
{
public string recvstr = null;
public Form1()
{
InitializeComponent();
}
//定义委托
delegate void AppendMessageCallback(string text);
private void AppendMessage(string text)
{
if (this.rtxtMessage.InvokeRequired)
{
AppendMessageCallback anc = new AppendMessageCallback(AppendMessage);
this.rtxtMessage.Invoke(anc, new object[] { text });
}
else
{
this.rtxtMessage.Text = text;
}
}
//定义委托
//线程
private void showRtxtMessage()
{
// for (int i = 0; i <= 1; i++)
//{
while (true)
{
try
{
recvstr = null;
System.Threading.Thread.Sleep(1000);
new Class1().show(this.rtxtMessage, recvstr.ToString());
}
catch
{
}
}
// }
} //线程
//按钮事件
private void button1_Click(object sender, EventArgs e)
{
recvstr = "消息显示";
Thread ThreadMessage = new Thread(showRtxtMessage);
ThreadMessage.Start();
}
}
/委托类 textbox
public class Class1
{
public Class1()
{
}
public void show(RichTextBox tb1, string _num)
{
//tb1.Text = _num;
AppendMessage(tb1, _num);
}
delegate void AppendMessageCallback(object sender, string text);
private void AppendMessage(object sender, string text)
{
RichTextBox tb = sender as RichTextBox;
if (tb == null) return;
if (tb.InvokeRequired)
{
AppendMessageCallback anc = new AppendMessageCallback(AppendMessage);
tb.Invoke(anc, new object[] { sender, text });
}
else
{
tb.Text = text;// +"/r/n" + tb.Text;
}
}
}
//
}