控件问题!进度条不移动!
时间:2011-12-18
来源:互联网
我是个socket的程序,一端发送文件,一端接收文件!
但是我发送端的进度条要移动,接收端的进度条就不移动 ,不知道为什么! 我贴出代码,麻烦看看!
小弟 感谢!
C/C++ code
进度条移动代码: LRESULT CTalkDialog::OnRecvProgressMove(WPARAM wParam,LPARAM lParam) { m_RecvProgressCtrl[m_RecvCount-1]->SetRange(0,m_FileCliHead.FileLength); m_RecvProgressCtrl[m_RecvCount-1]->OffsetPos(1200); if(m_RecvProgressCtrl[m_RecvCount-1]->GetPos()==m_FileCliHead.FileLength) { m_RecvProgressCtrl[m_RecvCount-1]->SetPos(0); //MessageBox(L"传输成功"); } return 0; } 发送进度条移动消息的代码,这段代码在一个while循环里面: if(pTalkDialog->m_RecvOnly==1)//接收文件的头部 { recv((pTalkDialog->m_AllSocket).fd_array[i],(char*)(&(pTalkDialog->m_FileSerHead)),sizeof(pTalkDialog->m_FileSerHead),0); pTalkDialog->m_RecvOnly++; pTalkDialog->PostMessage(WM_ModifySerDlg); //发送自定义消息 } if(pTalkDialog->m_StartRecvFlag==true)//当下面的send发送了确认接收后,这个IF判断为真,开始接收文件 { pTalkDialog->RecvData((pTalkDialog->m_AllSocket).fd_array[i]); WaitForSingleObject(Next_Recv_Event,INFINITE); }
作者: qweewqpkn 发布时间: 2011-12-18
你应该是在线程里发送消息到UI界面,然后在UI的自定义消息响应函数中操作进度条的吧,你Debug下看看自定义消息响应函数响应了没有?进度条的Pos对不?
作者: VisualEleven 发布时间: 2011-12-18
引用 1 楼 visualeleven 的回复:
你应该是在线程里发送消息到UI界面,然后在UI的自定义消息响应函数中操作进度条的吧,你Debug下看看自定义消息响应函数响应了没有?进度条的Pos对不?
你应该是在线程里发送消息到UI界面,然后在UI的自定义消息响应函数中操作进度条的吧,你Debug下看看自定义消息响应函数响应了没有?进度条的Pos对不?
成功解决了! 但是 发送端发送数据很快 (send函数),进度条的移动和实际发送数据量不匹配 怎么解决呢?
作者: qweewqpkn 发布时间: 2011-12-18
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28