回复 2楼 天使梦魔
版主,我是个新手,您说的我不会
SQL = "SELECT * FROM FFF where sYY Like '%" + str + "%'" + " order by ID DESC"
数据库FFF字段sYY的数据格式是:
”1.1.1“
“1.3.15”
"1.2.1.16"
"1.1.1.15"
"1.1.1.10”等等
1:先要从数据库FFF调取字段sYY数据如:str=“1.1.1.15”等等放到tree中去
CString strsID;
int Rst[5];
HTREEITEM hSubItem[5];//
m_pRs.GetFieldValue(_T("sID"),strsID);//
CString
str;//
str=strsID;
DWORD dw;
ASSERT(dw == _ttoi64(str));
if (a==4 )
{
hSubItem[0]=m_Tree1.InsertItem( strBTM, hParent );//
m_Tree1.SetItemData(hSubItem[0], dw);;
}
if (a==8)
{
hSubItem[1]=m_Tree1.InsertItem( strBTM,hSubItem[0] );//
m_Tree1.SetItemData(hSubItem[1], dw);
}
不能直接把str放到m_Tree1.SetItemData(hSubItem[0],dw)中dw位置,只能把str转换成dw,
结果一转就只剩1了,点后面的数据都没有了;
2:需要从tree中取出先放的dw值,SQL要调用
CString str;
int a;
a=m_Tree1.GetItemData(hTreeCurrent);
str.Format(_T("%d"),a);
3:数据库FFF中sYY的字符格式是“1.1.1.16",SQL要调用str,所以“1.1.1.16"和先前的”1“格式不对,无法查询
CString strConnection = _T("Provider=Microsoft.Jet.OLEDB.4.0;"
"Data Source=" + strBudgetName + ";jet oledb:database password=" + strPassword);
CString SQL;
SQL = "SELECT * FROM FFF where sYY Like '%" + str + "%'" + " order by ID DESC";
所以需要先将“1.1.1.16"转换成dw,放入tree中,等到从tree中取出节点与数据库查询时,又要将节点转换成与数据库匹配的字符格式