问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C+++ MFC 基本对话框的,在这个界面中需要设计一个进度条,用来显示数据传输的进度,请问如何实现??

发布网友 发布时间:2022-05-23 02:44

我来回答

1个回答

热心网友 时间:2023-10-10 20:36

主线程来做会阻塞界面的刷新,一般采用的是子线程来接受信息,然后通过界面窗体的句柄,实现主线程和子线程间同步,进行进度的显示的。
也可以不用同步,就定义一个进度标示变量,绑定到你的进度条控件上,在子线程中进行累加,主窗口中增加一个timer,来间隔刷新。追问线程的编程我不会,有没有关于这个进度条MFC编程的资料

追答那timer总会用吧?如果不好理解线程,你可以认为线程就是个timer, timer也是个线程。这样好写代码了吧?
定义个进度条变量DWORD dwCurrentLength,dwPrevLength;用于指示当前和前一次的进度条显示长度。然后在你的接收数据函数当中不断地累加它,
然后在你的主窗口当中添加一个定时器timer响应函数OnTimer() ,在当中判断一下当前是否需要刷新显示进度条。
if(dwPrevLength < dwCurrentLength)
{
//这里发送WM_PAINT消息到进度条控件的句柄,来强制刷新进度条
dwPrevLength = dwCurrentLength;
}
然后你再在点击传输数据开始的函数中添加一段代码来生成一个timer,每次开始传输数据就启动timer;
m_nTimer = SetTimer(...);
数据全部传输完毕就把这个timer终结掉。
Killtimer(m_nTimer);

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 呼伦贝尔油玉不绝电子商务有限公司怎么样? 如何避免wps卡顿? 属鼠的男人找对象是属什么,属鼠的人和什么属相合 96年鼠的姻缘在哪年 属相相合年份运势提升 2024属鼠找对象属什么最佳 黑客攻击网站能报案吗 黑客攻击报案有用吗 大型游乐设施的基本定义 游乐设施是什么? 最近这两年开始有颈椎病 因为长期低头玩手机 脖子后面那块骨头拱起来了 脖子酸疼酸疼的 怎么办 凯迪仕按错密码几次被锁定 高DPI在游戏中有很重要的作用吗? kaadas华侨城拿房初始密码 kaadas输错密码要等多久 给刚出生的小男生起名字 何可心 何可涵好听吗 党可涵这名字好不好 向可涵这名字好听不 展博8期3号现在的净值是多少 中投在线上的展博精选C号怎么样?适合购买吗? 大家帮帮忙,大连沙河口附近早市都在什么地方?有几个? 9月中旬去大连玩,麻烦介绍几家好点的便宜的宾馆,有名又好的小吃? 大连理工大学附近哪里有卖新鲜海鲜的地方?最好离的近些。新鲜的。谢谢啦! 从马栏广场到狗不理包子饭店怎么走 大连马栏菜市场卖海鲜新鲜吗?便宜吗? 吉祥馄炖在大连有多少家?急问~~~谢谢 大连那里有沙县小吃 游戏设施有什么? 进度条UI设计 大型游乐设施和免检游乐设备的区别在哪里,你知道吗 如何用PS设计进度条 游乐设施算体育健身设施吗 C# 等待进度条 设计思路 图片上是什么游乐设施?“You and I ride.”该如何翻译? 室内和室外游乐设施有什么区别 女生最适合什么职业 适合90后女生的工作 - 信息提示 微信别人和我打招呼我怎么加他为好友,要截图 18mm南红珠子12颗大约有多少克重? 布偶猫除了这个猫粮还能吃什么? 3个月的布偶猫除了猫粮还需补充什么营养 布偶猫吃什么. 有没有什么食物惊悸。如果是猫粮那个牌子好?皇家以外的。还有除了猫粮和鱼还可以喂什么? 布偶猫可以只吃猫粮吗? 毛发不好,布偶猫该吃什么改善? 怎么查个人身份档案 怎么可以在网页查到自己的身份档案 自己不小心把自己的删除了,怎么样找回来?