WinForm里面使用多线程修改主线程上的一个Label的值
2012-02-08 14:44
357 查看
// 先定义一个委托
public delegate void SetTextCallback(string text);
// 单击按钮
private void button1_Click(object sender, EventArgs e)
{
Thread t = new Thread(new ThreadStart(fun1));
t.Start();
}
// 线程函数体
private void fun1()
{
setText("hello");
}
// 设置文本函数
private void setText(string text)
{
if (label1.InvokeRequired)
{
SetTextCallback s = new SetTextCallback(setText);
Invoke(s, new string[] { text });
}
else
{
label1.Text = text;
}
}
public delegate void SetTextCallback(string text);
// 单击按钮
private void button1_Click(object sender, EventArgs e)
{
Thread t = new Thread(new ThreadStart(fun1));
t.Start();
}
// 线程函数体
private void fun1()
{
setText("hello");
}
// 设置文本函数
private void setText(string text)
{
if (label1.InvokeRequired)
{
SetTextCallback s = new SetTextCallback(setText);
Invoke(s, new string[] { text });
}
else
{
label1.Text = text;
}
}
相关文章推荐
- 在WinForm里面使用多线程修改主线程上的一个Label的值
- 在winform中使用程序读取和修改App.config里面的appSettings当中的Value值
- 在winform中使用程序读取和修改App.config里面的appSettings当中的Value值
- 使用管道流和多线程完成以下任务要求: 一个线程对象t1 会从控制台中不停的读取信息,读到之后把数据交给管道输出流,把数据写到管道里面 ,另一个线程对象t2 不停的使用管道输入流从管道
- winform 日期控件放在工具条(先放一个label 占好位置)上。工具条和其他控件都要求有鼠标的精准。
- c#中使用多线程访问winform中控件的若干问题
- 【C#】 winform 一个窗体修改另一个已经存在的窗体的属性
- WinForm中 事件 委托 多线程的应用【以一个下载进度条为例】
- WinCE5.0移动平台开发笔记(c#中使用多线程访问winform中控件的若干问题(zt))
- 59 Three.js 渲染两个场景和使用不同的相机,渲染在一个场景里面
- Android里面动态修改一个已经设置大小的组件修改大小的流程:
- GIT 版本控制软件的常用命令记录每次更新到仓库 现在我们手上已经有了一个真实项目的 Git 仓库,并从这个仓库中取出了所有文件的工作拷贝。接下来,对这些文件作些修改,在完成了一个阶段的目标和使用方法
- 使用VS2005 CTP July调试WinForm的一个问题,解决方法与各位分享。
- 使用多线程制作简单的Winform进度条
- 使用label标签,修改checkbox默认样式
- 探索多线程使用同一个数据库connection的后果
- QThread使用的一个例子----多线程
- C++ 类的使用(定义一个类,里面包含两个数据元素和一个成员函数,并输出数据元素较大值)
- 一个label里面 显示中文和英文不同的颜色
- Xml使用二三事: 小事1:做一个可以动态修改的“App.config”或“web.config”