QQ登录

只需一步,快速开始

286上位机VC MFC使用OLE DB添加书签功能

[ 复制链接 ]

286上位机VC MFC使用OLE DB添加书签功能

286上位机VC MFC使用OLE DB添加书签功能

OLE DB添加书签功能
功能展示
书签的概念很好理解,我们数据库中有也书签这一功能,在浏览到一数据时,可将当前的数据保存为书签,以便后面随时方便的打开,我们当前例程演示书签的使用方法,效果如图,随意翻阅记录集,<设置书签>后,就可在任意时间定位到书签指定的数据记录;

要点提示
当使用记录号导航时,如果 记录被删除那么就再也不能导航到该记录了,在程序中使用绝对记录定位,运行时易出错,建议使用书签面不要使用绝对记录集定位和返回记录;
例程中使用Cboomark类实现书签功能,此类是一个模板,其参数为书签长度,单位为字节,每个书签用4个字节,CBookmark<4> 的意思 是用4 个字节的字符存储书签数据,如果把0作为其参数即CBookmark<0> 则该书签动态分配 ,其长度按需进行调整;

实现功能
1.用根目录数据文件事先创建一数据源StudentInfo,再新建基于单文档的应用程序,数据表选择Basic,具体的创建过程可参考随后的视频演示;
2.修改向导为我们创建的类Cbasic的成员变量
int m_StuID;
// wchar_t m_StuName[26];
// wchar_t m_StuAdd[26];
// wchar_t m_StuTel[26];
TCHAR m_StuName[51];//改了变量类型
TCHAR m_StuAdd[51];
TCHAR m_StuTel[51];
CBookmark<4> m_RowsetBookmark;//添加书签
及BEGIN_COLUMN_MAP(CBasic)内的三行内容
COLUMN_ENTRY_TYPE(1, DBTYPE_I4, m_StuID)
// COLUMN_ENTRY_TYPE(2, DBTYPE_WSTR, m_StuName)
// COLUMN_ENTRY_TYPE(3, DBTYPE_WSTR, m_StuAdd)
// COLUMN_ENTRY_TYPE(4, DBTYPE_WSTR, m_StuTel)

COLUMN_ENTRY(2, m_StuName)
COLUMN_ENTRY(3, m_StuAdd)
COLUMN_ENTRY(4, m_StuTel)
BOOKMARK_ENTRY(m_RowsetBookmark)
4.在View视窗类的DoDataExchange()函数中添加代码
DDX_Text(pDX,IDC_STUID,m_pSet->m_StuID);//绑定编辑控件与记录
DDX_Text(pDX,IDC_STUNAME,m_pSet->m_StuName,51);//绑定编辑控件与记录
DDX_Text(pDX,IDC_STUADD,m_pSet->m_StuAdd,51);//绑定编辑控件与记录
DDX_Text(pDX,IDC_STUTEL,m_pSet->m_StuTel,51);//绑定编辑控件与记录
5.再在视窗类添加变量CBookmark<4> m_ViewBookmark;
6。依次添加四编辑框ID分别为IDC_STUID,IDC_STUNAME,IDC_STUADD,IDC_STUTEL,及按钮<设置书签><移动到书签关联点击消息响应函数
void CGkbc8View::OnBtSetbookmark()
{
m_ViewBookmark=m_pSet->m_RowsetBookmark;//设置书签
}

void CGkbc8View::OnBtGotobookmark()
{
m_pSet->MoveToBookmark(m_ViewBookmark);
UpdateData(FALSE);
}

我们来演示下功能实现的整个过程
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:286.上位机VC MFC使用OLE DB添加书签功能.zip 
文件大小:49.28 KB  售价:11金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我


  

您的支持是我们创作的动力!  

  

您可花点闲钱积分自助任意充值

  

成为VIP会员 全站资源任意下载永久更新!




回复

使用道具 举报

快速回复 返回列表 客服中心 搜索