VS2010 MFC中 Date Time Picker控件的使用

1. 在工具箱中找到Date Time Picker控件,然后拖放到对话框上。

2. 在其属性中按自己的需求做一些设置。

Format 属性:Long Date (长日期):****年**月**日

Short Date(短日期):2013/10/26(或 2013-10-26)

Show None 属性:用于将日期值设为空。

Use Spin Control 属性:提供一个调整时间的按钮,一个上(增加),一个下(减少)。

Allow Edit 属性:可以编辑整行。

……

3. 利用类向导给控件添加变量:CString  m_date。

用 UpdateDate(True); 即可获得日期或时间。

4. 如果只是需要获取的话,上面就OK了。若需要在控件上显示给定的日期的字符串,则还要添加控制变量:CDateTimeCtrl  m_datectrl;

代码如下:  CString datestr = "2013/10/25";

//如果不想拆分字符串,那么可以通过COleDateTime来转换成CTime 
                  COleDateTime dt;
                  dt.ParseDateTime(datestr);    //将日期值存到dt中
                  SYSTEMTIME st;    //定义一个系统时间类型的变量
                  dt.GetAsSystemTime(st);    //将dt中的时间按系统时间格式化
                  CTime m_Date(st); 
                  m_datectrl.SetTime(&m_Date);

下面记录下有关资料:http://hi.baidu.com/stupan/item/9bd7a946dee5eba960d7b96f

一. 自设DateTimePicker的时间

CString  mTime;   
   mTime = " 2013/10/26  12:25:32";        //自设时间

//在界面上有两DataTimePicker控件   
   CTime    m_Date;//短日期:IDC_DATETIMEPICKER1

CTime   m_Time;//时间:IDC_DATETIMEPICKER2

请问如何将字符串赋值到此二控件上?

答:

//如果不想拆分字符串,那么可以通过COleDateTime来转换成CTime   
       COleDateTime        dt;   
       dt.ParseDateTime(mTime);        //将mTime的时间值存到dt中
       SYSTEMTIME        st;        //定义一个系统时间类型的变量
       dt.GetAsSystemTime(st);        //将dt中的时间按系统时间格式化

CTime        tm(st);        //定义CTime对象并将st赋值给它
       m_Time        =        tm;        //控件会自动获取其需要的时间部分
       m_Date        =        tm;   
  这样就可以了。

二. 读取数据库的时间

//Cdoc是数据库类XXXSet 的对象, m_ctrlDTPicker1是DateTimePicker的控制变量

Cdoc.Open();  //打开数据库

Cdoc.MoveFirst(); //跳转到的一条记录

m_ctrlDTPicker1.SetTime(Cdoc.m_PI_DATE); //将数据库变量Cdoc.m_PI_DATE的值赋给DateTimePicker并显示

cdoc.Close();  //关闭数据库

三. 储存选择的时间到数据库

//Cdoc是数据库类XXXSet 的对象, m_ctrlDTPicker1是DateTimePicker的控制变量

CDocumentationSet cdoc;

cdoc.Open();  //打开数据库

cdoc.Edit();  //进入编辑模式

m_ctrlDTPicker1.GetTime(cdoc.m_PI_DATE); //获取日期并储存到数据库变量Cdoc.m_PI_DATE中

cdoc.Update(); //更新数据库

cdoc.Close();  //关闭数据库

*pResult = 0;

上一篇:CentOS yum源设定使用方法的整理(转)


下一篇:2017-3-2 C# WindowsForm 中label标签居中显示