15,471
社区成员
发帖
与我相关
我的任务
分享
HANDLE g_hThread; // 线程句柄
CWaitDlg *g_pWaitDlg; // 非模态窗口
int g_nCurStep; // 当前步数
int g_nTotalStep; // 总步数
// 启动线程
void _stdcall StartThread()
{
HANDLE hThread;
hThread = CreateThread();
// ...
}
// 线程函数
DWORD _stdcall MyThread()
{
// 从串口读取
return ReadComData();
}
// 显示进度条
void _stdcall ShowDlg()
{
g_pWaitDlg = new CWaitDlg();
g_pWaitDlg->Create();
// ...
}
// 隐藏进度条
void _stdcall HideDlg()
{
if(g_pWait != NULL)
{
g_pWait.Destory();
delete pWait;
}
}
// 负责读取串口数据
int _stdcall ReadComData()
{
DWORD dwRead = 0;
dwRead = ReadFile(...);
if(dwRead > 0)
{
// 这里读完了串口,用什么样的方法通知主界面比较好?
HideDlg();
return;
}
}