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;

 

 

posted @ 2013-10-26 19:50  紫清婷  阅读(4424)  评论(0编辑  收藏  举报