请教下大家:rs.m_data = m_strdata;//此时间空间无法添加到数据库
代码如下:
void CCteFormView::OnBnClickedSave()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData();
CcteSet rs;
rs.Open();
rs.AddNew();
rs.m_data = m_strdata;//此时间空间无法添加到数据库
rs.m_name=m_strname;
rs.m_luhao=m_strluhao;
rs.m_liaose=m_strliaose;
错误提示如下:
d:\myfile\visual studio 2012\projects\xuglassform\xuglassform\cteformview.cpp(269): error C2679: 二进制“=”: 没有找到接受“CDateTimeCtrl”类型的右操作数的运算符(或没有可接受的转换)
1> d:\program files (x86)\microsoft visual studio 11.0\vc\atlmfc\include\atltime.h(123): 可能是“ATL::CTime &ATL::CTime::operator =(__time64_t) throw()”
1> d:\program files (x86)\microsoft visual studio 11.0\vc\atlmfc\include\atltime.h(173): 或 “ATL::CTime &ATL::CTime::operator =(const ATL::CTime &)”
1> 尝试匹配参数列表“(ATL::CTime, CDateTimeCtrl)”时
rs.m_data = m_strdata;
左右类型不匹配,检查下可能一个是CDateTimeCtrl控件,一个是时间字段,需要转换下。
具体你的类型是什么要看完整代码
参考:http://blog.csdn.net/zmq5411/article/details/6250646
两个变量类型不能直接转换,没有对应的转换函数。你需要自己先代码转换一下
谢谢指教,是的,就是CDateTimeCtrl控件,日期控件。
谢谢楼上两位!在rs文件中是这样的:请帮我想想看要如何来处理呢,
void CCteFormView::UpdateList(CcteSet &rs)
{
m_ctrList.SetItemText(i, 1, (LPCTSTR)(CString)rs.m_data.Format("%Y-%m-%d"));
m_ctrList.SetItemText(i, 2, (LPCTSTR)(CString)rs.m_name);
m_ctrList.SetItemText(i, 3, (LPCTSTR)(CString)rs.m_luhao);
......
在保存时是这样的:
void CCteFormView::OnBnClickedSave()
{
UpdateData();
CcteSet rs;
rs.Open();
rs.AddNew();
rs.m_data = m_strdata;//此时间空间无法添加到数据库
rs.m_name=m_strname;
rs.m_luhao=m_strluhao;
rs.m_liaose=m_strliaose;
......