求助定时器问题??

时间:2022-08-03 23:25:22
现在我要做一个这样的对话框定时器:来纪录六个人跑100米的时间,按一下Statr时间从0:0:0(分别表示分、秒、1/100秒)开始计时,按第一下Stop把第一人的跑步时间纪录下来,并在对话框的编辑框显示,按第二、三、四、五、六下依次记录对应的时间并显示。如果按 StopAll所有人的时间记录都一样,按ReSet从新开始。
现在我还没有思路,望各位多多指点一下。

9 个解决方案

#1


既然是跑百米,那用::GetTickCount()来计时。

DWORD dwRunTime[6];//保存成绩的数组
DWORD dwBegin;//开始时间
int nPush; //按下次数

//开始计时
dwBegin = ::GetTickCount();
nPush = 0;

//按下Stop按钮
dwRunTime[nPush++] = ::GetTickCount()-dwBegin; //成绩

//按下Stop All
DWORD dwTmp = ::GetTickCount()-dwBegin;
for(int n=0; n<6; n++{
dwRunTime[n] = dwTmp; //成绩
}

注意dwRunTime 为毫米值,其他我就不写了。

#2


设好SetTimer(1,10,NULL)
现在在我的OnTimer()如何写才能使我的编辑框关联的一个CString m_str发生变法?并在编辑框里显示出来?

#3


m_str = _T("123");
UpdateData(FALSE);

#4


请问:01:32.23表示1分32.23秒如何在程序中表达出来?

#5


什么意思,转化成时间数据类型?

#6


你现在得到的是MS,你再换算成小时,分,秒
再用一个CString表示出来不就可以

#7


设好SetTimer(1,10,NULL);
要使我的对话框编辑框中表示出像01:32.23的数据(分、秒),编辑框应该关联怎么样的数据?在OnTimer()中如何表示???

#8


关联 CString m_strTimes;
strTimes.format( "%d:%d:%d", m_time.GetHour(), m_time.GetMinute(), m_time.second() );
UpdateData...

#9


class Clock {
  private:
    time    m_cStartTime ;
  public:
    void ReSetTime(){ m_cStartTime = GetTime();}
    time GetCurrentTime() //得到stop时间 
    
     time GetRunTime() { return  GetCurrentTime() - m_cStartTime ;} 
     void StartClock();
     void StopClock();
}

#1


既然是跑百米,那用::GetTickCount()来计时。

DWORD dwRunTime[6];//保存成绩的数组
DWORD dwBegin;//开始时间
int nPush; //按下次数

//开始计时
dwBegin = ::GetTickCount();
nPush = 0;

//按下Stop按钮
dwRunTime[nPush++] = ::GetTickCount()-dwBegin; //成绩

//按下Stop All
DWORD dwTmp = ::GetTickCount()-dwBegin;
for(int n=0; n<6; n++{
dwRunTime[n] = dwTmp; //成绩
}

注意dwRunTime 为毫米值,其他我就不写了。

#2


设好SetTimer(1,10,NULL)
现在在我的OnTimer()如何写才能使我的编辑框关联的一个CString m_str发生变法?并在编辑框里显示出来?

#3


m_str = _T("123");
UpdateData(FALSE);

#4


请问:01:32.23表示1分32.23秒如何在程序中表达出来?

#5


什么意思,转化成时间数据类型?

#6


你现在得到的是MS,你再换算成小时,分,秒
再用一个CString表示出来不就可以

#7


设好SetTimer(1,10,NULL);
要使我的对话框编辑框中表示出像01:32.23的数据(分、秒),编辑框应该关联怎么样的数据?在OnTimer()中如何表示???

#8


关联 CString m_strTimes;
strTimes.format( "%d:%d:%d", m_time.GetHour(), m_time.GetMinute(), m_time.second() );
UpdateData...

#9


class Clock {
  private:
    time    m_cStartTime ;
  public:
    void ReSetTime(){ m_cStartTime = GetTime();}
    time GetCurrentTime() //得到stop时间 
    
     time GetRunTime() { return  GetCurrentTime() - m_cStartTime ;} 
     void StartClock();
     void StopClock();
}