出自http://www.cnblogs.com/52yixin/articles/2111299.html

使用DateTimePicker控件一般是获 取其时间替代手工输入带来的不便,而DateTimePicker控件既可以获取日期(2010-03-05)也可以获取时间(16:27:33),要获 取日期只需要更改控件属性的格式为长日期或短日期,要获取时间则将格式更改为时间即可!

在添加控件变量时,选择其变量类型为CDateTimeCtrl(类如m_DateCtrl);在程序中定义CTime对象用来保存获取的时间,然后可以将其转换为CString类型;具体实现:

1        CTime time;
2 m_DateCtrl.GetTime(time);
3 CString strTime=time.Format("%Y-%m-%d") //获取到的为日期 如:2010-03-05
4
5 CTime time;
6 m_DateCtrl.GetTime(time);
7 CString strTime=time.Format("%H:%M:%S") //获取到的为时间 如:16:27:33

VC2005中DateTimePicker控件的使用

 1 1 显示年月日时分秒的当前时间
2 CDateTimeCtrl m_DateItmeCtrl_Time;
3 m_DateItmeCtrl_Time.SetFormat(_T("yyyy-MM-dd HH:mm:ss"));
4 CTime TimeTemp=TimeTemp.GetCurrentTime();
5 m_DateItmeCtrl_Time.SetTime(&TimeTemp);
6
7 其中HH表示24小时制,hh表示12小时制
8 2 如果声明一个控件类型为CTime的变量,那么时间将显示1970-01-01 08:00:00.
9
10 3将DateTimePicker控件声明变量类型为COleDateTime
11 COleDateTime转CString
12 CString strTime;
13 COleDateTime dtTime;
14 strTime =dtTime.Format(_T("%Y-%m-%d %H:%M:%S"));

CString转COleDateTime(因为VS2005时间日期控件关联的Value变量默认是COleDateTime类型)

1 CString strTime =_T("2009-08-11 11:22:33");
2 COleVariant VariantTime;
3 VariantTime = strTime;
4 VariantTime.ChangeType(VT_DATE);
5 COleDateTime DataTime = VariantTime;

SetTime时 参数需要为指针

 1   m_ctrlMachineDeliveryDate.SetTime(&CTime::GetCurrentTime()); //将控件显示当前日期
2 m_ctrlMachineInstallDate.SetTime(&CTime::GetCurrentTime());
3
4
5
6 CTime tDeliveryDate;
7 m_ctrlMachineDeliveryDate.GetTime(tDeliveryDate); //获取发货日期
8 pMachineInfoSet->m_MACHINE_DELIVERYDATE = tDeliveryDate;
9
10
11
12 CTime tDeliveryDate;
13 tDeliveryDate = pMachineInfoSet->m_MACHINE_DELIVERYDATE; //获取记录中的日期
14 m_ctrlMachineDeliveryDate.SetTime(&tDeliveryDate); //将记录中的日期赋值到DateTime控件中显示

 // 设定时间日期控件允许选择的范围

 1  CTime tCurrentTime= CTime::GetCurrentTime();
2 CTimeSpan timespanOneMonth(30,0,0,0); //这里设置为当前日期推后30天
3 CTime tEndTime = tCurrentTime +timespanOneMonth;
4 m_ctrlADTipsDaysDate.SetRange(&tCurrentTime,&tEndTime);
5 /*
6 m_dtcTm:这个是DATE TIME PICKER控件变量
7 CTime begin_tm(1970,1,1,8,0,0),end_tm(2038,1,19,3,14,7);
8 m_dtcTm.SetRange(&begin_tm,&end_tm);
9 m_tmClock=CTime::GetCurrentTime();//设置初始值为当前时间
10 m_dtcTm.SetTime(&m_tmClock);
11 //m_dtcTm.SetFormat("yyyy-MM-dd HH'时'mm'分'"); //设置字符串格式
12 m_dtcTm.SetFormat("yyyy-MM-dd HH:mm:ss");
13 */

最新文章

  1. geotrellis使用(二十三)动态加载时间序列数据
  2. 新功能发布!Markdown写博客!
  3. 表连接,如何先筛选再 join
  4. Android -- 是时候来了解一波EventBus了
  5. 15Spring_AOP编程(AspectJ)_抛出通知
  6. Linux crond定时任务
  7. 判断文件结束,feof……
  8. arguments的用法
  9. web2.0最全的国外API应用集合
  10. [Codeforces 505C]Mr. Kitayuta, the Treasure Hunter
  11. iOS开发之二:UIWindow与UIView
  12. Python3 小技巧
  13. LoadRunner场景设置
  14. MYSQL 事务和用户权限
  15. load加载层-layui
  16. ASP.NET Web Api 2 接口API文档美化之Swagger
  17. jqplot导入包小结
  18. HDTunePro汉化版温度显示不正常后需要更改
  19. python字符串转换成变量的几种方法
  20. 20155233 2016-2017-2 《Java程序设计》第10周学习总结

热门文章

  1. CSS动画库——animate.css的使用
  2. PL/SQL创建用户
  3. iOS UIWebView获取403/404
  4. Http学习(三)
  5. 如何有效管理Windows系统帐户权限
  6. day 53 Django基础二之URL路由系统
  7. PHP面向对象魔术方法之__clone函数
  8. SGLTE/SVLTE、CSFB、SRVCC概念
  9. JSP页面静态化总结之一使用URLRewrite实现url地址伪静态化
  10. Java程序员注意:Tomcat Get请求的巨坑!