//=========================================================================//
//题目:关于当前时间显示和当前时间获取
//描述:在wince下获取当前系统时间和现实当前系统时间
//作者:Mercury Xu
//日期:2008-07-12
//编译环境:VS2005 VC++ /EVC均可
//=========================================================================//
正文:
这个并不是很麻烦的问题。去年的这个时候已经做出来了。今年再一次用到收集整理了一下放到这里
这次应用地方是蓝牙电话接播电话的时间记录。为制作电话本而特别设计的。
电话本的设计其实主要控制好关键字的问题,我使用了INI文件作为电话本存储的方式(以后上SQLite以后整体
的结构还是不会变)。时间是一个很好的关键字。永远不会重复,同时为电话记录提供了一个很好的标准和查
询的办法。具体的代码很简单。就几句话。
void CiniRWtestDlg::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
SYSTEMTIME showNowTime;
//获取系统时间类
GetLocalTime(&showNowTime);
//获取本地时间
CString TimeString;
//转换
CString temp,temp1,temp2,str1,str2;
TimeString.Format(_T("%4d-%2d-%2d %2d:%2d:%2d")
,showNowTime.wYear
,showNowTime.wMonth
,showNowTime.wDay
,showNowTime.wHour
,showNowTime.wMinute
,showNowTime.wSecond);
//定义时间格式
//当前系统时间准确时间_tandow_2007-10-10_by_MercuryXu
// other.....
UpdateData(TRUE);//作用是实现数据的实时更新有效性
m_timeshow = TimeString;
UpdateData(FALSE);
CDialog::OnTimer(nIDEvent);
}
以上为获取时间的部分。
接下来就让时间循环下去。到OnInitDialog()中加一个SetTimer(1,1000,NULL);
你的时间就会在你定义的m_timeshow中跑起来了。另外
m_timeshow可以是静态文本,可以是编辑框,这个随便你自己定义了。在VALUE中定义一个CString的就好了
很简单的。