您的位置:首页 > 其它

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

2008-03-19 14:05 796 查看
在我们的程序中常常需要设置顺计时器,下面是一个顺计时器的答题设置步骤:

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: