wxDateTime如何使用

   最近在开发一个程序,需要显示当前时间和运行时间。

    比如当前时间:10:00:08 运行时间 00:01:18

    这里要定义两个类成员wxDateTime,一个保存

初始时间,一个保存当前时间。不过本人比较有强迫症

不想定义那么多变量。

 

所以刚开始是这么表示运行时间的

void OnTimer(wxTimerEvent& event)
{
    static long total= 0 ; 
    total++;
    int h = total/3600;
    int m = (total/60)%60;   
    int s = total%60; 
    wxString str;
    str.printf(wxT("%02%02d%02d"),h,m,s);
    //说来也怪,不定义 h m s临时变量一直搞不成功
    //可能是total是long类型的原因,搞了好久没搞定嗨 
  
    wxDateTime now = wxDateTime::Now();     
    //刚开始没用wxDateTime::Now()来构造,一直崩溃 
    wxString strNow = now.FormatISOTime(); 
    //手写的代码,可能有小错
    //因为最后我没这样写,写错了好多次
}

后来就是定义了两个变量的版本的

void OnTimer( wxTimerEvent& event )
{
 nowTime = wxDateTime::Now();
 wxString now =nowTime.FormatISOTime();
 wxTimeSpan diff = nowTime.Subtract(beginTime);
 wxString now =diff.Format();
 
//TimeSpan的Format是HH::MM:SS格式的 
 
}

你可能感兴趣的:(wxwidgets,wxDateTime,wxTimeSpan,wxTimeEvent)