顺计时器,将整数转换成分:秒(00:00)形式的时间格式字符串

来源:互联网 发布:制作手绘图片软件 编辑:程序博客网 时间:2024/05/02 17:18

在我们的程序中常常需要设置顺计时器,下面是一个顺计时器的答题设置步骤:

1、SetTimer(1, 1000, NULL);

2、格式化答题顺计时器显示为分:秒(00:00)形式时间
void CXXXDlg::FormatTimer()
{
 m_iAnswerThemeTimer++;  //增加一秒

 int iMinute = 0;
 int iSecond = 0;
 int iAnswerThemeTimer = m_iAnswerThemeTimer;
 CString strMinute = _T("");
 CString strSecond = _T("");
 CString strAnswerThemeTimer = _T("");

 // 计时器总时间小于3600秒
 if ( iAnswerThemeTimer < 3600 )
 {
  // 计时器总时间小于60秒
  if ( iAnswerThemeTimer < 60 )
  {
   strMinute = _T("00");
   //计时器总时间小于10秒
   if ( iAnswerThemeTimer < 10 )
   {
    iSecond = iAnswerThemeTimer;
    strSecond.Format("%d", iSecond);
    strSecond = _T("0") + strSecond;
   }
   // 计时器总时间大于10秒小于60秒
   else
   {
    iSecond = iAnswerThemeTimer;
    strSecond.Format("%d", iSecond);
   }
   //strAnswerThemeTimer = strMinute + _T(":") + strSecond;
  }
  // 计时器总时间大于60秒小于3600秒
  else
  {
   iMinute = iAnswerThemeTimer/60;
   //计时器总时间小于10分钟
   if ( iMinute < 10 )
   {
    strMinute.Format("%d", iMinute);
    strMinute = _T("0") + strMinute;
   }
   //计时器总时间大于10分钟小于60分钟
   else
   {
    strMinute.Format("%d", iMinute);
   }

   iSecond = iAnswerThemeTimer - iMinute*60;
   //计时器总时间小于10秒
   if ( iSecond < 10 )
   {
    strSecond.Format("%d", iSecond);
    strSecond = _T("0") + strSecond;
   }
   // 计时器总时间大于10秒小于60秒
   else
   {
    strSecond.Format("%d", iSecond);
   }
   //strAnswerThemeTimer = strMinute + _T(":") + strSecond;
  }
  strAnswerThemeTimer = strMinute + _T(":") + strSecond;
  m_ctrAnswerThemeTimer.SetWindowText(strAnswerThemeTimer);
 }
 else
 {
  m_iAnswerThemeTimer = 0;
 }
}

3、KillTimer(1);

 

 

更多技术文章请参看施昌权的个人网站: http://www.joyvc.cn

 

 

原创粉丝点击