会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
眼界决定境界,定位决定地位!
博客园
首页
新随笔
联系
订阅
管理
随笔 - 666
文章 - 0
评论 - 2
阅读 -
86410
c#中子线程控制进度条的一个简单例子
这个问题来自社区提问,代码保留一份用来以后回答
using
System;
using
System.ComponentModel;
using
System.Windows.Forms;
namespace
WindowsApplication4
{
///
<summary>
///
gui 类
///
</summary>
public
partial
class
Form1 : Form
{
public
Form1()
{
InitializeComponent();
}
private
void
button1_Click(
object
sender, EventArgs e)
{
//
用子线程工作
new
System.Threading.Thread(
new
System.Threading.ThreadStart(StartDownload)).Start();
}
//
开始下载
public
void
StartDownload()
{
Downloader downloader
=
new
Downloader();
downloader.onDownLoadProgress
+=
new
Downloader.dDownloadProgress(downloader_onDownLoadProgress);
downloader.Start();
}
//
同步更新ui
void
downloader_onDownLoadProgress(
long
total,
long
current)
{
if
(
this
.InvokeRequired)
{
this
.Invoke(
new
Downloader.dDownloadProgress(downloader_onDownLoadProgress),
new
object
[]
{ total, current }
);
}
else
{
this
.progressBar1.Maximum
=
(
int
)total;
this
.progressBar1.Value
=
(
int
)current;
}
}
}
///
<summary>
///
下载类
///
</summary>
public
class
Downloader
{
//
委托
public
delegate
void
dDownloadProgress(
long
total,
long
current);
//
事件
public
event
dDownloadProgress onDownLoadProgress;
//
开始模拟工作
public
void
Start()
{
for
(
int
i
=
0
; i
<
100
; i
++
)
{
if
(onDownLoadProgress
!=
null
)
onDownLoadProgress(
100
, i);
System.Threading.Thread.Sleep(
100
);
}
}
}
}
好文要顶
关注我
收藏该文
微信分享
星火燎猿*
粉丝 -
10
关注 -
32
+加关注
0
0
升级成为会员
«
上一篇:
[情人节专属]纯js脚本1k大小的3D玫瑰[整理后]
»
下一篇:
虚拟服务器负载均衡实现方法
posted @
2022-12-03 09:14
星火燎猿*
阅读(
42
) 评论(
0
)
编辑
收藏
举报
刷新页面
返回顶部
登录后才能查看或发表评论,立即
登录
或者
逛逛
博客园首页
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
相关博文:
·
C#多线程参数传递
·
WinForm--使用C#制做进程监视器
·
C# 多线程的进度条
·
多线程 ui 进度条
·
C# 多线程 progressbar 界面不卡顿简单用法
阅读排行:
·
微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
·
C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
·
DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
·
NetPad:一个.NET开源、跨平台的C#编辑器
·
面试官:你是如何进行SQL调优的?
公告
昵称:
星火燎猿*
园龄:
15年
粉丝:
10
关注:
32
+加关注
<
2025年2月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
我的标签
QQ登录界面
(1)
概念版QQ
(1)
随笔档案
2022年12月(665)
2012年11月(1)
阅读排行榜
1. oracle监听器(listener)配置心得(3057)
2. 电脑时常断网和掉线的解决方法(2191)
3. C# AES/ECB/PKCS5Padding实现AES的加密及解密(1932)
4. 15款非常有用的JavaScript开发工具(1286)
5. 最能增强免疫力的十大食物(1240)
评论排行榜
1. 模仿概念版QQ登录界面(超炫)(2)
2. .NET下的ORM框架介绍(1)
推荐排行榜
1. SqlServer 自动化分区方案(2)
2. MVVM模式原理分析(1)
3. Java和C# RSA私钥格式转换帮助类(1)
4. 模仿概念版QQ登录界面(超炫)(1)
最新评论
1. Re:.NET下的ORM框架介绍
我是小白,EF core和sqlSuger算ORM框架吗
--无烟棒棒糖
2. Re:模仿概念版QQ登录界面(超炫)
@ 优雅的猪刚发现,膜拜大牛!!!...
--ma6174
3. Re:模仿概念版QQ登录界面(超炫)
博猪滴博皮碉堡了
--优雅的猪
点击右上角即可分享
支持DeepSeek的编程助手
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
· 面试官:你是如何进行SQL调优的?