工控编程吧
标题:
262上位机VC MFC使用ODBC显示数据表全部记录
[打印本页]
作者:
qq263946146
时间:
2016-4-23 21:51
标题:
262上位机VC MFC使用ODBC显示数据表全部记录
(, 下载次数: 1)
上传
点击文件名下载附件
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()中初始变量的初始化
void CGkbc8View::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
//<>
CSize sizeTotal;
sizeTotal.cx = sizeTotal.cy = 100;
SetScrollSizes(MM_TEXT, sizeTotal);
SetScrollSizes(MM_HIENGLISH,sizeTotal);
m_pSet=&GetDocument()->m_ODBCSet;
if(m_pSet->IsOpen())//检查记录集是否打开
m_pSet->Close();//关闭记录集
m_pSet->Open();//打开记录集
}
复制代码
4.在视窗类的OnDraw()函数中实现数据表内容的全部读取与显示
void CGkbc8View::OnDraw(CDC* pDC)
{
CGkbc8Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
TEXTMETRIC txtm;
int nLineHight,y=0;
CString str;
pDC->GetTextMetrics(&txtm);
nLineHight=txtm.tmHeight+txtm.tmExternalLeading;
CPoint point(0,0);
if(m_pSet->IsBOF())//检查是否空记录集
return;
m_pSet->MoveFirst();
pDC->TextOut(point.x,point.y,"StudentID");//在点point(x,y)显示StudentID
pDC->TextOut(point.x+1000,point.y,"StudentName");
pDC->TextOut(point.x+4000,point.y,"GradYear");
point.y-=nLineHight*2;
while(!m_pSet->IsEOF())//循环,直到数据库末尾
{
str.Format("%d",m_pSet->m_ID);//把变量m_ID的值赋予变量str
pDC->TextOut(point.x,point.y,str);
str.Format("%s",m_pSet->m_Name);
pDC->TextOut(point.x+1000,point.y,str);
str.Format("%d",m_pSet->m_GradYear);
pDC->TextOut(point.x+4000,point.y,str);
m_pSet->MoveNext();//下移记录
point.y-=nLineHight;
}
}
复制代码
我们来演示功能实现的整个过程
[iqiyi]http://player.video.qiyi.com/62361bafbb24fc17e211428d2bcec06f/0/0/w_19rt5su2ol.swf-albumId=5739622009-tvId=5739622009-isPurchase=0-cnId=12[/iqiyi]
(, 下载次数: 0)
上传
点击文件名下载附件
[note]1[/note]
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4