C++时间函数(软件开发)

还需要添加什么样的代码才能使时间随系统时间更新而更新?1、建立一个基于对话框的应用程序SystemTime2、建立时间函数voidCSystemTimeDlg::OnPa... 还需要添加什么样的代码才能使时间随系统时间更新而更新?
1、建立一个基于对话框的应用程序SystemTime
2、建立时间函数
void CSystemTimeDlg::OnPaint()
{
CDC*pDC = GetDC();
CFont Font;
CRect rect,rc;
GetClientRect(rect);
CTime time = CTime::GetCurrentTime();
m_Font.CreatePointFont(90,_T("宋体"),pDC);
pDC->SelectObject(&m_Font);
pDC->SetTextColor(RGB(5,5,155));
pDC->SetBkMode(TRANSPARENT);
rc.CopyRect(rect);
rc.DeflateRect(359,17,0,0);
pDC->DrawText(time.Format("%Y年%m月%d日"),rc,DT_CENTER);
rc.CopyRect(rect);
rc.DeflateRect(323,38,0,0);
pDC->DrawText(time.Format("%H:%M:%S"),rc,DT_CENTER);
rc.CopyRect(rect);
rc.DeflateRect(420,38,0,0);
pDC->DrawText(time.Format("[星期%w]"),rc,DT_CENTER);
Font.DeleteObject();
}
之后还需要添加什么函数?
SetTimer?要怎么实现?
展开
 我来答
匿名用户
2013-04-13
展开全部
可以用SetTimer。先添加WM_TIMER消息响应,然后SetTimer(1,1000,NULL),然后在响应函数里面调用Invalidate函数就可以了,这样可以实现每一秒重绘一次,调用ONPAINT.
匿名用户
2013-04-13
展开全部
先在OnInitDialog中添加SetTimer(1, 1000, NULL);// 设置定时器,每秒跳一次;后添加WM_TIMER消息响应,调用你的OnPaint或Invalidate函数,退出时KillTimer(1);// 释放定时器
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-04-13
展开全部
或者你可以起一支子线程做Timer的工作。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
流连到忘返
2013-04-13
知道答主
回答量:28
采纳率:0%
帮助的人:12.3万
展开全部
SetTimer设置成1000毫秒,WM_TIMER中通过 GetLocalTime (&st); 获取系统当前时间,通过st结构体赋值给年月日星期时间等。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式