strBirthdayDate.Format("%04d%02d%02d",m_BirthdayDate.GetYear(),m_BirthdayDate.GetMonth(),m_BirthdayDate.GetDay()) //m_BirthdayDate是时间控件
strEntryDate.Format("%04d%02d%02d",m_EntryDate.GetYear(),m_EntryDate.GetMonth(),m_EntryDate.GetDay())
//将增加的员工信息写入数据库
CString sql
sql.Format("insert into staffmng values('%s','%s','%s','%s','%s','%s')",m_strID,m_strName,strSex,strBirthdayDate,strWorkState,strEntryDate)
m_pDoc->m_Odbc.ExecSql(sql)
你好,是你啊,呵呵。SetTime不能接受COleDateTime作为参数,SetTime的定义如下:int SetTime(int nHour, int nMin, int nSec)从定义可知,SetTime只接受三个整形参数,即小时、分、秒。 COleDateTime类重载了=号,你可以通过等号设置时间,你可以这样写:m_starttime=COleDateTime(varValue[2].m_pdate->year,varValue[2].m_pdate->month,varValue[2].m_pdate->day,0,0,0)..
这里省掉若干有关数据库 *** 作的代码……
_variant_t vFieldValue = (_bstr_t)connection.m_pRecordset->GetCollect("日期")//先获得数据库中的时间
::VariantChangeType(&vFieldValue, &vFieldValue, 0, VT_DATE)//转换成时间类型
COleDateTime odatetime = vFieldValue.date
CString str
str.Format( "%s", odatetime.Format("%Y年%m月") )//把时间转化为字符串,下面就好办了
//将上面的str串赋给DateTimePicker控件
CDateTimeCtrl *pCtrlDate = (CDateTimeCtrl*)GetDlgItem(IDC_DATE_XXX)//IDC_DATE_XXX为DateTimePicker控件的ID
COleDateTime oledatetime
oledatetime.ParseDateTime( str )
VERIFY( pCtrlDate->SetTime(oledatetime) )
是有点麻烦,分上述两步做就可以了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)