1、基本函数:
CTime time;
time=CTime::GetCurrentTime();//得到当前时间
2、在窗口创建的时候添加定时器
在classview中右击主界面类,添加windows消息函数VM_create,添加代码如下:
int CCommDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
.......
// add timer
SetTimer(1,1000,NULL);//安装定时器,并将其时间间隔设为1000毫秒
......
}
3、添加定时器相应函数并更新控件(用于显示时间)
在classview中右击主界面类,添加windows消息函数VM_timer,添加代码如下:
void CCommDlg::OnTimer(UINT nIDEvent)
{
// list the time of system
CTime time;
time=CTime::GetCurrentTime();//得到当前时间
CString s=time.Format("%Y-%m-%d %H:%M:%S");//转换时间格式
m_time=s;//设置标签的文字
UpdateData(FALSE);//更新
...........
}
注: m_time为控件对应的变量。设置空间对应的变量,方便在程序代码中更改其属性
time.Format("%Y-%m-%d %H:%M:%S");//转换时间格式的格式
%a Abbreviated weekday name %A Full weekday name %b Abbreviated month name %B Full month name %c Date and time representation appropriate for locale %d Day of month as decimal number (01 – 31) %H Hour in 24-hour format (00 – 23) %I Hour in 12-hour format (01 – 12) %j Day of year as decimal number (001 – 366) %m Month as decimal number (01 – 12) %M Minute as decimal number (00 – 59) %p Current locale's A.M./P.M. indicator for 12-hour clock %S Second as decimal number (00 – 59) %U Week of year as decimal number, with Sunday as first day of week (00 – 53) %w Weekday as decimal number (0 – 6; Sunday is 0) %W Week of year as decimal number, with Monday as first day of week (00 – 53) %x Date representation for current locale %X Time representation for current locale %y Year without century, as decimal number (00 – 99) %Y Year with century, as decimal number %z, %Z Either the time-zone name or time zone abbreviation, depending on registry settings; no characters if time zone is unknown %% Percent sign