2008年8月1日星期五

WINCE应用层设计经验总结-关于当前时间显示和当前时间获取

//=========================================================================//

//题目:关于当前时间显示和当前时间获取

//描述:在wince下获取当前系统时间和现实当前系统时间

//作者:Mercury Xu

//日期:2008-07-12

//编译环境:VS2005 VC++ /EVC均可

//=========================================================================//

正文:

这个并不是很麻烦的问题。去年的这个时候已经做出来了。今年再一次用到收集整理了一下放到这里

这次应用地方是蓝牙电话接播电话的时间记录。为制作电话本而特别设计的。

电话本的设计其实主要控制好关键字的问题,我使用了INI文件作为电话本存储的方式(以后上SQLite以后整体

的结构还是不会变)。时间是一个很好的关键字。永远不会重复,同时为电话记录提供了一个很好的标准和查

询的办法。具体的代码很简单。就几句话。

  1. void CiniRWtestDlg::OnTimer(UINT_PTR nIDEvent)
  2. {
  3. // TODO: 在此添加消息处理程序代码和/或调用默认值
  4. SYSTEMTIME showNowTime;
  5. //获取系统时间类
  6. GetLocalTime(&showNowTime);
  7. //获取本地时间
  8. CString TimeString;
  9. //转换
  10. CString temp,temp1,temp2,str1,str2;
  11. TimeString.Format(_T("%4d-%2d-%2d %2d:%2d:%2d")
  12. ,showNowTime.wYear
  13. ,showNowTime.wMonth
  14. ,showNowTime.wDay
  15. ,showNowTime.wHour
  16. ,showNowTime.wMinute
  17. ,showNowTime.wSecond);
  18. //定义时间格式
  19. //当前系统时间准确时间_tandow_2007-10-10_by_MercuryXu
  20. // other.....
  21. UpdateData(TRUE);//作用是实现数据的实时更新有效性
  22. m_timeshow = TimeString;
  23. UpdateData(FALSE);
  24. CDialog::OnTimer(nIDEvent);
  25. }
以上为获取时间的部分。

接下来就让时间循环下去。到OnInitDialog()中加一个SetTimer(1,1000,NULL);

你的时间就会在你定义的m_timeshow中跑起来了。另外

  1. m_timeshow可以是静态文本,可以是编辑框,这个随便你自己定义了。在VALUE中定义一个CString的就好了
  2. 很简单的。

沒有留言:

 
Copyright © 阿肆 Mercury Xu