QQ登录

只需一步,快速开始

262上位机VC MFC使用ODBC显示数据表全部记录

[ 复制链接 ]

262上位机VC MFC使用ODBC显示数据表全部记录

262上位机VC MFC使用ODBC显示数据表全部记录

262上位机VC MFC使用ODBC显示数据表全部记录
功能展示
我们在使用数据库时很多情况都要显示记录集的全部数据,比如打印,那么我们就得使用代码将表中的数据全部的显示出来,我们当前例程就实现了这一功能,程序运行自动连接数据源,将数据源中指定表格的数据全部显示出来,效果如图
要点提示
1.数据库表的全部遍历可以使用CRecordSet类的IsEOF()函数及MoveNext()结合来实现,IsEOF()表示是否已经MOVENEXT()到了表格的尾部
实现功能
1.新建基于单文档的应用程序;
2.再用类向导新建一基于Crecordset的类CODBCSet;
在文档中类中添加此类的头文件#include “ODBCSet.h”及变量public:CODBCSetm_ODBCSet;在视窗中添加此类的头文件#include “ODBCSet.h”及变量public:CODBCSet *m_pSet;
3.在视窗的初始化函数OnInitialUpdate()中初始变量的初始化
  1. void CGkbc8View::OnInitialUpdate()
  2. {
  3.         CScrollView::OnInitialUpdate();

  4. //<>
  5.         CSize sizeTotal;
  6.         sizeTotal.cx = sizeTotal.cy = 100;
  7.         SetScrollSizes(MM_TEXT, sizeTotal);
  8.         SetScrollSizes(MM_HIENGLISH,sizeTotal);
  9.         m_pSet=&GetDocument()->m_ODBCSet;
  10.         if(m_pSet->IsOpen())//检查记录集是否打开
  11.                 m_pSet->Close();//关闭记录集
  12.         m_pSet->Open();//打开记录集
  13. }
复制代码
4.在视窗类的OnDraw()函数中实现数据表内容的全部读取与显示
  1. void CGkbc8View::OnDraw(CDC* pDC)
  2. {
  3.         CGkbc8Doc* pDoc = GetDocument();
  4.         ASSERT_VALID(pDoc);
  5.         // TODO: add draw code for native data here

  6.         TEXTMETRIC txtm;
  7.     int nLineHight,y=0;
  8.         CString str;
  9.         pDC->GetTextMetrics(&txtm);
  10.         nLineHight=txtm.tmHeight+txtm.tmExternalLeading;
  11.         CPoint point(0,0);
  12.         if(m_pSet->IsBOF())//检查是否空记录集
  13.                 return;

  14.         m_pSet->MoveFirst();
  15.         pDC->TextOut(point.x,point.y,"StudentID");//在点point(x,y)显示StudentID
  16.         pDC->TextOut(point.x+1000,point.y,"StudentName");
  17.         pDC->TextOut(point.x+4000,point.y,"GradYear");
  18.         point.y-=nLineHight*2;
  19.         
  20.     while(!m_pSet->IsEOF())//循环,直到数据库末尾
  21.         {
  22.                 str.Format("%d",m_pSet->m_ID);//把变量m_ID的值赋予变量str
  23.                 pDC->TextOut(point.x,point.y,str);

  24.                 str.Format("%s",m_pSet->m_Name);
  25.                 pDC->TextOut(point.x+1000,point.y,str);

  26.                 str.Format("%d",m_pSet->m_GradYear);
  27.                 pDC->TextOut(point.x+4000,point.y,str);

  28.                 m_pSet->MoveNext();//下移记录
  29.                 point.y-=nLineHight;
  30.         }
  31. }
复制代码
我们来演示功能实现的整个过程
请点击此处下载

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

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

文件名称:262.上位机VC MFC使用ODBC显示数据表全部记录.zip 
文件大小:43.18 KB  售价:10金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我

  

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

  

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

  

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



回复

使用道具 举报

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