SYSTEMTIME time;
memset(&time, 0, sizeof(time));
timewHour = 11;
timewMinute = 22;
timewSecond = 33;
VERIFY(m_dateTimeSetTime(&time)); // 这个debug下就出错了。
年月日怎么不设置呢?
方法一:
调用UdateData(TRUE)控件值取到相应变量
方法二:
也可以调用CDateTimeCtrl::GetTime, 这种方式可以不需要绑定变量, 也不需要调用UdateData
CTime time;
((CDateTimeCtrl)GetDlgItem(IDC_DATETIMEPICKER1))->GetTime(time);
这里省掉若干有关数据库 *** 作的代码……
_variant_t vFieldValue = (_bstr_t)connectionm_pRecordset->GetCollect("日期"); //先获得数据库中的时间
::VariantChangeType(&vFieldValue, &vFieldValue, 0, VT_DATE);//转换成时间类型
COleDateTime odatetime = vFieldValuedate;
CString str;
strFormat( "%s", odatetimeFormat("%Y年%m月") ); //把时间转化为字符串,下面就好办了
//将上面的str串赋给DateTimePicker控件
CDateTimeCtrl pCtrlDate = (CDateTimeCtrl)GetDlgItem(IDC_DATE_XXX); //IDC_DATE_XXX为DateTimePicker控件的ID
COleDateTime oledatetime;
oledatetimeParseDateTime( str );
VERIFY( pCtrlDate->SetTime(oledatetime) );
是有点麻烦,分上述两步做就可以了。
Coledatetime 是个日期类,比如你要改变time picker的时间添加一个这样的类型的变量改变他就可以了。
Cdatetimectrl用来 *** 作time picker这个控件的,比如让控件不可用,让控件显示 /隐藏,改变控件的位置等等。
以上就是关于为什么我创建一个CDateTimeCtrl不能设置时间全部的内容,包括:为什么我创建一个CDateTimeCtrl不能设置时间、在vc 6.0中日期时间选取器怎样将值赋给其相对应的CTime类型的变量、VC6.0,如何从sql2000数据库中的某个表读取时间数据,显示在DateTimePicker控件上等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)