VC中用DAO实现树型控件的数据库访问
2009-06-08 20:07:55 来源:WEB开发网为了响应用户对树型控件的操作,能够根据用户的选则的省市,显示该省市的详细内容,需要运用向导为控件IDC_TREE1加入OnSelchangedTree1()函数,函数实现的功能是将树型控件的选择项名称赋给pDoc->Name变量。
void CIdView::OnSelchangedTree1(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
CTreeCtrl* pTree2 = (CTreeCtrl*) GetDlgItem(IDC_TREE1);
HTREEITEM hSelected = pNMTreeView->itemNew.hItem;
CPppDoc* pDoc = (CPppDoc*)GetDocument();
CString hParentName;
HTREEITEM hParent=pTree2->GetParentItem(hSelected);
if(hSelected!=NULL)
{
pDoc->Name=pTree2->GetItemText(hSelected);
}
*pResult = 0;
}
有了pDoc->Name变量值,就可以将它赋值给CDaoRecordset类的m_strFilter变量,然后调用CDaoRecordset类的Requery()函数,重新对数据库进行查询,最后调用CdaoRecordView类的UpdateData(FALSE)成员函数将字段内容显示出来。
二、编程步骤
1、建立Access数据库,数据库结构和内容见程序项目中的access文件;
2、启动Visual C++6.0,生成一个建立单文档不基于数据库支持的应用程序工程,视图类继承于CFormView,程序工程名命名为Ppp,视图类名为CPppView。
3、建立数据库集,数据源采用DAO连接,继承于CDaoRecordset,类名为 CShengSet
4、在视图类CpppView的对话框模板中加入树型控件(IDC_TREE1),定义变量名为m_treectrl;
5、插入对话框资源(IDD_SHENG_FORMVIEW,具体设置参见代码部分),使用Class Wizard建立该对话框的新类CShengView,继承于CDaoRecordView,同时选择第3创建的步数据集;
更多精彩
赞助商链接