9.定时器的使用以及CTime类的使用

定时器(Timer)在 Windows 的程序设计中很多地方都能用到,他的主要用途是按程序的设定间隔时间,间歇性的产生 WM_TIMER 消息,发送到指定窗口
之后,在窗口中对 WM_TIMER 消息进行处理,完成指定的任务!

①、定时器函数的讲解:
◆ 定时器启动函数:SetTimer
◆ 定时器响应函数:OnTimer
◆ 定时器结束函数:KillTimer

时间间隔范围:USER_TIMER_MINIMUM(最小值) 到 USER_TIMER_MAXIMUM(最大值)
#define USER_TIMER_MAXIMUM  0x7FFFFFFF 毫秒
#define USER_TIMER_MINIMUM  0x0000000A 毫秒

如果需要更精确的定时器,详见:http://www.cctry.com/thread-6536-1-1.html

②、限制定时器的响应次数;

③、利用 CStatic 控件动态显示系统时间:
◆ CStatic 控件响应消息的准备:1>ID不能是 IDC_STATIC;2> 控件属性的 Notify 设置为 True;
◆ CTime 类的简单实用;
  CTime mTime;
  mTime = CTime::GetCurrentTime();
  CString strTime = mTime.Format(_T("现在的时间是 %Y-%m-%d %H:%M:%S"));//unicod下加汉字会出错,解决方法见下面
  SetDlgItemText(IDC_STATIC_SHOW, strTime);
◆ 更改 CStatic 控件的文字颜色;
响应WM_CTRLCOLOR消息
if (nCtlColor == CTLCOLOR_STATIC && pWnd->GetDlgCtrlID() == IDC_SHOW){
 pDC->SetTextColor(RGB(0, 0, 255));
 pDC->SetBkMode(TRANSPARENT);
 return CreateSolidBrush(GetSysColor(COLOR_3DFACE));
}

◆ 时间格式中有中文的情况如何处理;
#include <locale.h>
_tsetlocale(LC_ALL,  _T("chs"));//初始化函数中
//本函数用来配置地域的信息,设置当前程序使用的本地化信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值