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

📄 jichengdlg.cpp

📁 用Visual c++写
💻 CPP
字号:
// JichengDlg.cpp : implementation file
//

#include "stdafx.h"
#include "mining.h"
#include "JichengDlg.h"
#include"DlgGaihua.h"

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

/////////////////////////////////////////////////////////////////////////////
// CJichengDlg dialog


CJichengDlg::CJichengDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CJichengDlg::IDD, pParent)
{

	m_bVisable=false;
	m_jichengFinish=false;
	//{{AFX_DATA_INIT(CJichengDlg)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CJichengDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CJichengDlg)
	DDX_Control(pDX, IDC_LIST1, m_list);
	DDX_Control(pDX, IDC_TREE2, m_TreeXueXiao);
	DDX_Control(pDX, IDC_TREE1, m_TreeGuoJi);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CJichengDlg, CDialog)
	//{{AFX_MSG_MAP(CJichengDlg)
	ON_BN_CLICKED(IDC_JICHENG, OnJicheng)
	ON_BN_CLICKED(IDC_GUIYUE, OnGuiyue)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CJichengDlg message handlers

BOOL CJichengDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	//树形列表学生过级表
	m_bVisable=false;
    TV_INSERTSTRUCT tvInsert;		//树控制项 
    HTREEITEM hTreeItem[7];
    CString tbName,fdName;
	int nCount;
	char *p;
	CODBCFieldInfo fdInfo;
	CXueshengbiao  m_XueshengRec;
	CChengjibiao  m_ChengjiRec;

	m_TreeGuoJi.DeleteAllItems(); 
	m_XueshengRec.Open();
	tbName=m_XueshengRec.GetTableName();
	p=tbName.GetBuffer(tbName.GetLength()); 
	nCount=m_XueshengRec.GetODBCFieldCount();
	tvInsert.hParent = TVI_ROOT;
	tvInsert.hInsertAfter = TVI_LAST; 
	tvInsert.item.mask=TVIF_TEXT; 
	tvInsert.item.pszText =_T(p);
	hTreeItem[0]=m_TreeGuoJi.InsertItem(&tvInsert); 
	
	for(int i=0;i<nCount;i++)
	{
		m_XueshengRec.GetODBCFieldInfo(i,fdInfo);
		fdName=fdInfo.m_strName;
		char  *q=fdName.GetBuffer(fdName.GetLength());
		tvInsert.hParent =hTreeItem[0];
		tvInsert.hInsertAfter = TVI_LAST; 
		tvInsert.item.mask=TVIF_TEXT; 
		tvInsert.item.pszText =_T(q);
		m_TreeGuoJi.InsertItem(&tvInsert); 
	}
	m_TreeGuoJi.Expand(hTreeItem[0],TVE_EXPAND); 
	m_XueshengRec.Close();
	
	//树形列表学生成绩表
	m_TreeXueXiao.DeleteAllItems(); 
    
	m_ChengjiRec.Open(AFX_DB_USE_DEFAULT_TYPE,"SELECT * FROM 学校成绩表");
	tbName=m_ChengjiRec.GetTableName();
	p=tbName.GetBuffer(tbName.GetLength()); 
	nCount=m_ChengjiRec.GetODBCFieldCount();
	tvInsert.hParent = TVI_ROOT;
	tvInsert.hInsertAfter = TVI_LAST; 
	tvInsert.item.mask=TVIF_TEXT; 
	tvInsert.item.pszText =_T(p);
	hTreeItem[0]=m_TreeXueXiao.InsertItem(&tvInsert); 
	
	for(int j=0;j<nCount;j++)
	{
		m_ChengjiRec.GetODBCFieldInfo(j,fdInfo);
		fdName=fdInfo.m_strName;
		p=fdName.GetBuffer(fdName.GetLength());
		tvInsert.hParent =hTreeItem[0];
		tvInsert.hInsertAfter = TVI_LAST; 
		tvInsert.item.mask=TVIF_TEXT; 
		tvInsert.item.pszText =_T(p);
		hTreeItem[j+1]=m_TreeXueXiao.InsertItem(&tvInsert); 
	}
	m_TreeXueXiao.Expand(hTreeItem[0],TVE_EXPAND); 
	m_ChengjiRec.Close();


	//创建集成对话框
	m_list.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
	m_rdJoin.Open(AFX_DB_USE_DEFAULT_TYPE,"select  *  from 学校成绩表,过级成绩表 \
		 where 学校成绩表.学号=过级成绩表.学号");
	nCount=m_rdJoin.GetODBCFieldCount();
	for(int k=0;k<nCount;k++)
	{	
		m_rdJoin.GetODBCFieldInfo(k,fdInfo);
		fdName=fdInfo.m_strName;
		p=fdName.GetBuffer(fdName.GetLength());
		m_list.InsertColumn(k,p,LVCFMT_LEFT,90);
	}
	m_list.DeleteColumn(4);
	int n=0;
	m_rdJoin.MoveFirst();
	do
	{  
		
		CString s;
		m_list.InsertItem(n,m_rdJoin.m_column1,0);
		s.Format("%d",(int)m_rdJoin.m_column2);
		m_list.SetItemText(n,1,s);
		s.Format("%d",(int)m_rdJoin.m_column3);
		m_list.SetItemText(n,2,s);
		s.Format("%d",(int)m_rdJoin.m_column4);
		m_list.SetItemText(n,3,s);
		m_list.SetItemText(n,4,m_rdJoin.m_column22);
		m_list.SetItemText(n,5,m_rdJoin.m_column32);
		s.Format("%d",(int)m_rdJoin.m_column12);
		m_list.SetItemText(n,6,s);
        m_rdJoin.MoveNext();
		n++;
	} while(!m_rdJoin.IsEOF());
	m_rdJoin.Close();

	CRect rectSeparator;
	GetWindowRect(&m_largeWindow);
	GetDlgItem(IDC_SEPARATOR)->GetWindowRect(&rectSeparator);
	m_smallWindow.left=m_largeWindow.left;
	m_smallWindow.top=m_largeWindow.top;
	m_smallWindow.right=m_largeWindow.right;
	m_smallWindow.bottom=rectSeparator.bottom;
	SetWindowPos(NULL,0,0,m_smallWindow.Width(),m_smallWindow.Height(),SWP_NOMOVE | SWP_NOZORDER);
	return TRUE; 
}

void CJichengDlg::OnJicheng() 
{
	m_jichengFinish=true;

	if(!m_bVisable)
	{
		SetWindowPos(NULL,0,0,m_largeWindow.Width(),m_largeWindow.Height(),SWP_NOMOVE | SWP_NOZORDER);
		SetDlgItemText(IDC_JICHENG,"数据集成<<");
	}
	else
	{
		SetWindowPos(NULL,0,0,m_smallWindow.Width(),m_smallWindow.Height(),SWP_NOMOVE | SWP_NOZORDER);
		SetDlgItemText(IDC_JICHENG,"数据集成>>");
	}
	m_bVisable=!m_bVisable;
}

void CJichengDlg::OnGuiyue() 
{
	if(m_jichengFinish)
	{	
		EndDialog(0);
		CDlgGaihua dlg;
		dlg.DoModal();
	}
	else
	{
		MessageBox("请先数据集成!");
		return;
	}
}

⌨️ 快捷键说明

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