CDateTimeCtrl

日期控件(CDateTimeCtrl)

 

 

 

实现:

MFC向导创建对话框应用程序,在对话框模板上拖放CDateTimeCtrl所指定的控件,为控件添加变量:(CDateTimeCtrl 控件类型)m_dateTimeCtrl

 

在InitDialog消息里处理如下:

m_dateTimeCtrl.SetMonthCalColor(MCSC_TEXT,RGB(0,0,255));

        

       CStringformatStr=_T("'?¬¨¬º?: 'yyyy'/'MM'/'dd");

 

       m_dateTimeCtrl.SetFormat(formatStr);//¦¨¨¡§?tÌ??º??º?

       //??º¡À?Ì?¦?¡é?T

       COleDateTimeMinTime(COleDateTime::GetCurrentTime()-COleDateTimeSpan(30,0,0,0));

       COleDateTimeMaxTime(COleDateTime::GetCurrentTime()+COleDateTimeSpan(30,0,0,0));

       m_dateTimeCtrl.SetRange(&MinTime,&MaxTime);//¦¨¨¡§?t¨¦?Ì?º¡À?¤?¡ì

       LOGFONTlf; 

       memset(&lf,0,sizeof(lf));

       lf.lfHeight=20;

       strcpy(lf.lfFaceName,"??¬?");

       HFONThfont=::CreateFontIndirect(&lf); 

 

       m_dateTimeCtrl.SetMonthCalFont(hfont);

 

在对话框上添加一个按钮,用户获取当前时间:

 

void CMonthCalendar_TestDlg::OnBnClickedButton1()

{

       // TODO: ¨²ä?¬¨ª¨®?tª¡§aä|¤¨ª¨¬¨°ä¨²?

       CStringmsg;

       CTimeMinTime,MaxTime;

       DWORDresult=m_dateTimeCtrl.GetRange(&MinTime,&MaxTime);//?¨?º¡À??

       msg=_T("\n¨¦?º¡À?Ì??T: ");

       if(result&GDTR_MIN)

              msg+=MinTime.Format("%#x");

       else

              msg+=_T("None.");

       msg+=_T("\n¨¦?º¡À?Ì?¦?T: ");

       if(result&GDTR_MAX)

              msg+=MaxTime.Format("%#x");

       else

              msg+=_T("None.");

       CTimetime;

       m_dateTimeCtrl.GetTime(time);

       msg+=_T("\nÌ¡À¡ã¦¨¨¡§º¡À?: ");

       msg+=time.Format("%#c");

       AfxMessageBox(msg);

}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值