科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件用VC实现按数据库记录构建树控件

用VC实现按数据库记录构建树控件

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

将树中的每一个项目作为数据库中的一条记录(ACCESS2000),将程序启动时,对数据库进行读操作。

作者:XuFeng Yuan 来源:vckbase 2007年10月19日

关键字: VC 数据库 记录 树控件

  • 评论
  • 分享微博
  • 分享邮件
简介:

  将树中的每一个项目作为数据库中的一条记录(ACCESS2000),将程序启动时,对数据库进行读操作;创建树的各个项目时,是对数据库进行读操作,每次的读取,都是在可是查寻符合条件的记录,并将其一一添加到树中!

  实现方法:

  准备:

  使用ACCESS2000,创建一个数据库,名字为City.mdb(我们将制作一个关于省与市的树,特别适合通讯录);在数据库中创建一表,表名为TreeItem,字段内容与类型如下图:

  ID: 索引号码(可有,可无)
  Name: 项目名称(必须)
  ParentItem: 父项名称(必须)
  SecNum: 电话区号(可有,可无)

  输入一些原始数据.数据库已经准备好,那我们就进行实地的编程阶段.

  程序实现:

  创建一个基于对话框的工程---TreeData

  一.ADO的引入和初始化

  由于在程序中,我使用了ADO来连接和操作数据库,所以要进行以下操作:

  1.在Stdafx.h中添加引作ADO的代码:

//--------------------------------------------
#import "c:\program files\common files\system\ado\msado15.dll" \
no_namespace \
rename("EOF","adoEOF")
//--------------------------------------------

  2.在TreeData.h中声明两个私有变量:

public:
_ConnectionPtr m_pTreeConn;//连接创建
private:
CString TreeConnString;//连接字符串

  3.在CTreeDataApp的构造函数CTreeDataApp中添加如下代码:

//-------------------------------------------
m_TreeConnString=_T("Provider=Microsoft.Jet.OLEDB.4.0;")
_T("Data Source=DataBase\\City.mdb;");
//-------------------------------------------

  4.在CTreeDataApp的初始化函数中添加如下代码:

//-------COM初始化--------------------------------
AfxOleInit();
/******************连接通讯录数据库********************/
HRESULT hRes;
try
{
hRes=m_pTreeConn.CreateInstance(_T("ADODB.Connection"));
m_pTreeConn->ConnectionTimeout = 8;
//连接ACCESS2000
hRes=m_pTreeConn->Open(_bstr_t((LPCTSTR) m_strTelDataSource),
_T(""),_T(""),adModeUnknown);
}
catch(_com_error e)///捕捉异常
{
CString errormessage;
errormessage.Format(_T("连接TelBook.mdb数据库失败!\r\n错误信息:%s"),e.ErrorMessage());
AfxMessageBox(errormessage);///显示错误信息
return FALSE;
}
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章