MFC显示程序已经运行的时间

先上效果图:
在这里插入图片描述

步骤:

  1. 先在xxxDlg.cpp程序内声明全局变量
CTime beg_tm, cur_tm;//一个记录程序开始的时间,一个利用OnTimer函数记录当前时间
CTimeSpan span;//记录时间差
  1. 在程序初始化时记录程序开始时间并启动定时器。在OnInitDialog()函数里添加:
    beg_tm = CTime::GetCurrentTime(); //获取当前系统时间
	SetTimer(1, 1000, NULL);         //启动定时器
  1. 在对话框界面设计页面,页面设计如下:
    在这里插入图片描述
    注意每个编辑框的ID,如 天 前面编辑框ID设置为IDC_EDIT5,以此依次设计时分秒相应对话框ID。
  2. 添加消息处理函数OnTimer()。在函数里添加如下代码:
void CMFCCurTimeDlg::OnTimer(UINT_PTR nIDEvent)
{
	int day, hour, min, sec;
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	cur_tm = CTime::GetCurrentTime();         //获取当前系统时间
	span = cur_tm - beg_tm;
	
	day=span.GetDays();
	hour=span.GetHours();
	min=span.GetMinutes();
	sec=span.GetSeconds();

	CString str2;
	str2.Format(_T("%d"), sec);//格式转换
	LPCTSTR pStr = LPCTSTR(str2);
	SetDlgItemText(IDC_EDIT1, pStr);  //显示秒    

	CString str3;
	str3.Format(_T("%d"), min);
	LPCTSTR pStr1 = LPCTSTR(str3);
	SetDlgItemText(IDC_EDIT3, pStr1);//显示分

	CString str4;
	str4.Format(_T("%d"), hour);
	LPCTSTR pStr2 = LPCTSTR(str4);
	SetDlgItemText(IDC_EDIT4, pStr2);//显示时

	CString str5;
	str5.Format(_T("%d"), day);
	LPCTSTR pStr3 = LPCTSTR(str5);
	SetDlgItemText(IDC_EDIT5, pStr3);//显示天

	CDialogEx::OnTimer(nIDEvent);
}
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值