⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 viewdata.cpp

📁 数据库程序的作业
💻 CPP
字号:
// ViewData.cpp : implementation file
//

#include "stdafx.h"
//#include "DataBase.h"
#include "ViewData.h"
#include "fun.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CViewData dialog


CViewData::CViewData(CWnd* pParent /*=NULL*/)
	: CDialog(CViewData::IDD, pParent)
{
	//{{AFX_DATA_INIT(CViewData)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT

	m_pParent = pParent;
	m_caption = "数据库浏览    [*]";
	m_record = NULL;
}


void CViewData::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CViewData)
	DDX_Control(pDX, IDC_LIST1, m_list);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CViewData, CDialog)
	//{{AFX_MSG_MAP(CViewData)
	ON_WM_CLOSE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CViewData message handlers
BOOL CViewData::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here 	
	CenterWindow();
	Init();

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
} 


BOOL CViewData::Init()
{
	if(m_record)
	{
		CString windowtext;
		windowtext = "数据库浏览    [" +m_caption + "]";
		SetWindowText(windowtext);
		
		int i;
		m_record->MoveFirst();
		int nFieldCount = m_record->GetFieldCount();
		for(i=0; i<nFieldCount; i++)
		{
			CDaoFieldInfo FieldInfo;
			m_record->GetFieldInfo(i, FieldInfo, AFX_DAO_ALL_INFO);
			
			LV_COLUMN lvcol;
			lvcol.mask = LVCF_FMT|LVCF_TEXT|LVCF_WIDTH;
			lvcol.fmt = LVCFMT_LEFT;
			lvcol.cx = 70;
			lvcol.pszText = (char *)(LPCTSTR)FieldInfo.m_strName ;
			lvcol.iSubItem = i;
			
			m_list.InsertColumn (i, &lvcol);
		}
		
		int index = -1;  //插入item后的索引号
		while(!m_record->IsEOF())
		{
			index += 1;
			CString strVar = strVARIANT(m_record->GetFieldValue(0));
			LV_ITEM lvitem;
			lvitem.iItem = index;
			lvitem.iSubItem = 0;
			lvitem.mask = LVIF_TEXT;
			lvitem.pszText = (char *)(LPCTSTR)strVar;
			
			m_list.InsertItem (&lvitem);
			
			for(i=0; i<nFieldCount; i++)
			{
				strVar = strVARIANT(m_record->GetFieldValue(i));
				m_list.SetItemText (index, i, strVar);
			}
			m_record->MoveNext();
		}
		
		m_caption = "数据库浏览    [*]";
	}
	return TRUE;
}

void CViewData::PostNcDestroy() 
{
	// TODO: Add your specialized code here and/or call the base class
	m_pParent->SendMessage(WM_VIEWDATA_CLOSE);
	delete this;

	CDialog::PostNcDestroy();
}

void CViewData::OnClose() 
{
	// TODO: Add your message handler code here and/or call default
	m_pParent->SendMessage(WM_VIEWDATA_CLOSE);
	DestroyWindow();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -