MFC中 如何在按暂停Button后 计时器 暂停,按继续按钮后 计时器 继续接着暂停前的计数,求各位大神指导!!

AgentNeo 2012-07-04 11:31:14
如题
...全文
467 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2013-03-09
  • 打赏
  • 举报
回复
您好 我是本版版主 此帖已多日无人关注 请您及时结帖 如您认为问题没有解决可按无满意结帖处理 另外本版设置了疑难问题汇总帖 并已在版面置顶 相关规定其帖子中有说明 您可以根据规定提交您帖子的链接 如您目前不想结帖只需回帖说明 我们会删除此结帖通知 见此回复三日内无回应 我们将强制结帖 相关规定详见界面界面版关于版主结帖工作的具体办法
zgl7903 2012-07-05
  • 打赏
  • 举报
回复
在类中添加一个计数值 如 int m_CountValue; 记得在类构造时初始化
添加三个按钮 IDC_START_BUTTON IDC_PAUSE_BUTTON(状态Disable) IDC_RESET_BUTTON
添加一个编辑框或静态文本框 IDC_SHOW_COUNT

重载 CWnd::WindowProc
LRESULT CXXXXClass::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case(WM_COMMAND):
{
UINT wNotifyCode = HIWORD(wParam);
UINT wID = LOWORD(wParam);
switch(wID)
{
case(IDC_START_BUTTON): //启动
{
SetTimer(10, 100, NULL);
GetDlgItem(IDC_START_BUTTON)->EnableWindow(FALSE);
GetDlgItem(IDC_PAUSE_BUTTON)->EnableWindow(TRUE);
break;
}
case(IDC_PAUSE_BUTTON)://暂停
{
KillTimer(10);
GetDlgItem(IDC_START_BUTTON)->EnableWindow(TRUE);
GetDlgItem(IDC_PAUSE_BUTTON)->EnableWindow(FALSE);
break;
}
case(IDC_RESET_BUTTON)://复位
{
m_CountValue = 0;
SetDlgItemInt(IDC_COUNT_SHOW, m_CountValue);
break;
}
}
break;
}
case(WM_TIMER):
{
if(wParam == 10)
{
m_CountValue++;
SetDlgItemInt(IDC_COUNT_SHOW, m_CountValue);
}
break;
}
}
return CBaseXXXXClass::WindowProc(message, wParam, lParam);
}

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧