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

📄 dacxxxdlg.cpp

📁 vc开发的学生管理系统 很不错的 哦 供大家研究学习之用
💻 CPP
字号:
// DaCxXXDlg.cpp : implementation file
//

#include "stdafx.h"
#include "student.h"
#include "DaCxXXDlg.h"
#include "StudentView.h"
#include "Picture.h"

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

/////////////////////////////////////////////////////////////////////////////
// CDaCxXXDlg dialog


CDaCxXXDlg::CDaCxXXDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CDaCxXXDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDaCxXXDlg)
	m_S_Sfyd = FALSE;
	m_S_Bj = _T("");
	m_S_Byxx = _T("");
	m_S_Bz = _T("");
	m_S_Csrq = _T("");
	m_S_ID = _T("");
	m_S_Jb = _T("");
	m_S_Jg = _T("");
	m_S_Jkzk = _T("");
	m_S_Jzxm = _T("");
	m_S_Lxdh = _T("");
	m_S_Mz = _T("");
	m_S_Tcah = _T("");
	m_S_Xb = _T("");
	m_S_Xm = _T("");
	m_S_Xjzt = _T("");
	m_S_Xsly = _T("");
	m_S_Yb = _T("");
	m_S_Zsqk = _T("");
	m_S_Zy = _T("");
	m_S_Zzmm = _T("");
	m_S_Hkd = _T("");
	m_S_Jzzz = _T("");
	//}}AFX_DATA_INIT
	m_zp.Buffer =NULL;
	m_zp.Size = 0;
	IsInit = false;
}


void CDaCxXXDlg::DoDataExchange(CDataExchange* pDX)
{
	if(!IsInit)
	{
		for(int i=0;i<Index;i++)
		{
			m_parent->m_recSet->MoveNext();
		}
	
		ShowRow();
	}
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDaCxXXDlg)
	DDX_Control(pDX, IDC_IMAGE_ZP, m_S_Zp);
	DDX_Control(pDX, IDC_BU_UP, m_Bu_Up);
	DDX_Control(pDX, IDC_BU_DOWN, m_Bu_Down);
	DDX_Control(pDX, IDC_BU_Z, m_Bu_Z);
	DDX_Control(pDX, IDC_BU_A, m_Bu_A);
	DDX_Control(pDX, IDC_LIST_JT, m_S_JT);
	DDX_Control(pDX, IDC_LIST_JL, m_S_JL);
	DDX_Check(pDX, IDC_CHECK_SFYD, m_S_Sfyd);
	DDX_Text(pDX, IDC_EDIT_BJ, m_S_Bj);
	DDX_Text(pDX, IDC_EDIT_BYXX, m_S_Byxx);
	DDX_Text(pDX, IDC_EDIT_BZ, m_S_Bz);
	DDX_Text(pDX, IDC_EDIT_CSRQ, m_S_Csrq);
	DDX_Text(pDX, IDC_EDIT_ID, m_S_ID);
	DDX_Text(pDX, IDC_EDIT_JB, m_S_Jb);
	DDX_Text(pDX, IDC_EDIT_JG, m_S_Jg);
	DDX_Text(pDX, IDC_EDIT_JKZK, m_S_Jkzk);
	DDX_Text(pDX, IDC_EDIT_JZXM, m_S_Jzxm);
	DDX_Text(pDX, IDC_EDIT_LXDH, m_S_Lxdh);
	DDX_Text(pDX, IDC_EDIT_MZ, m_S_Mz);
	DDX_Text(pDX, IDC_EDIT_TCAH, m_S_Tcah);
	DDX_Text(pDX, IDC_EDIT_XB, m_S_Xb);
	DDX_Text(pDX, IDC_EDIT_XM, m_S_Xm);
	DDX_Text(pDX, IDC_EDIT_XJZT, m_S_Xjzt);
	DDX_Text(pDX, IDC_EDIT_XSLY, m_S_Xsly);
	DDX_Text(pDX, IDC_EDIT_YB, m_S_Yb);
	DDX_Text(pDX, IDC_EDIT_ZSQK, m_S_Zsqk);
	DDX_Text(pDX, IDC_EDIT_ZY, m_S_Zy);
	DDX_Text(pDX, IDC_EDIT_ZZMM, m_S_Zzmm);
	DDX_Text(pDX, IDC_EDIT1_HKD, m_S_Hkd);
	DDX_Text(pDX, IDC_EDIT1_JZZZ, m_S_Jzzz);
	//}}AFX_DATA_MAP
	if(!IsInit)
	{
	
		LV_COLUMN lvc;
		
		lvc.mask = LVCF_TEXT | LVCF_SUBITEM | LVCF_WIDTH /*| LVCF_FMT*/;
		
		lvc.iSubItem = 0;
		lvc.pszText = (char *)"关系";
		lvc.cx = 50;
		m_S_JT.InsertColumn(0,&lvc);
		
		lvc.iSubItem = 1;
		lvc.pszText = (char *)"姓名";
		lvc.cx = 100;
		m_S_JT.InsertColumn(1,&lvc);
		
		lvc.iSubItem = 2;
		lvc.pszText = (char *)"年龄";
		lvc.cx =50;
		m_S_JT.InsertColumn(2,&lvc);
		
		lvc.iSubItem = 3;
		lvc.pszText = (char *)"工作单位及职位";
		lvc.cx = 300;
		m_S_JT.InsertColumn(3,&lvc);
		
		lvc.iSubItem = 4;
		lvc.pszText = (char *)"联系电话";
		lvc.cx = 100;
		m_S_JT.InsertColumn(4,&lvc);
		
		lvc.iSubItem = 0;
		lvc.pszText = (char *)"何年月起";
		lvc.cx = 100;
		m_S_JL.InsertColumn(0,&lvc);
		
		lvc.iSubItem = 1;
		lvc.pszText = (char *)"到何年月";
		lvc.cx = 100;
		m_S_JL.InsertColumn(1,&lvc);
		
		lvc.iSubItem = 2;
		lvc.pszText = (char *)"在何学校及任职";
		lvc.cx =200;
		m_S_JL.InsertColumn(2,&lvc);
		
		lvc.iSubItem = 3;
		lvc.pszText = (char *)"证明人";
		lvc.cx = 100;
		m_S_JL.InsertColumn(3,&lvc);
		
		ShowRowJ();
		IsInit = true;
	}

}


BEGIN_MESSAGE_MAP(CDaCxXXDlg, CDialog)
	//{{AFX_MSG_MAP(CDaCxXXDlg)
	ON_BN_CLICKED(IDC_BU_UP, OnBuUp)
	ON_BN_CLICKED(IDC_BU_DOWN, OnBuDown)
	ON_BN_CLICKED(IDC_BU_A, OnBuA)
	ON_BN_CLICKED(IDC_BU_Z, OnBuZ)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDaCxXXDlg message handlers

void CDaCxXXDlg::OnBuUp() 
{
	// TODO: Add your control notification handler code here
	this->m_Bu_A.EnableWindow(true);
	this->m_Bu_Down.EnableWindow(true);
	this->m_Bu_Z.EnableWindow(true);
	this->m_Bu_Up.EnableWindow(true);
	m_parent->m_recSet->MovePrevious();
	if(m_parent->m_recSet->IsEOF())
	{
		this->m_Bu_Z.EnableWindow(false);
		this->m_Bu_Down.EnableWindow(false);
		m_parent->m_recSet->MoveLast();
	}
	if(m_parent->m_recSet->IsBOF())
	{
		this->m_Bu_A.EnableWindow(false);
		this->m_Bu_Up.EnableWindow(false);
		m_parent->m_recSet->MoveFirst();
	}
	this->UpdateData(true);
	ShowRow();
	ShowRowJ();
	this->UpdateData(false);
}

void CDaCxXXDlg::OnBuDown() 
{
	// TODO: Add your control notification handler code here
	this->m_Bu_A.EnableWindow(true);
	this->m_Bu_Down.EnableWindow(true);
	this->m_Bu_Z.EnableWindow(true);
	this->m_Bu_Up.EnableWindow(true);
	m_parent->m_recSet->MoveNext();
	if(m_parent->m_recSet->IsEOF())
	{
		this->m_Bu_Z.EnableWindow(false);
		this->m_Bu_Down.EnableWindow(false);
		m_parent->m_recSet->MoveLast();
	}
	if(m_parent->m_recSet->IsBOF())
	{
		this->m_Bu_A.EnableWindow(false);
		this->m_Bu_Up.EnableWindow(false);
		m_parent->m_recSet->MoveFirst();
	}
	this->UpdateData(true);
	ShowRow();
	ShowRowJ();
	this->UpdateData(false);
}

void CDaCxXXDlg::ShowRow()
{
	COleDateTime dateTemp;
	m_parent->m_recSet->GetFieldValue("S_Bj",m_S_Bj);
	m_parent->m_recSet->GetFieldValue("S_Byxx",m_S_Byxx);
	m_parent->m_recSet->GetFieldValue("S_Bz",m_S_Bz);
	m_parent->m_recSet->GetFieldValue("S_Csrq",dateTemp);
	m_S_Csrq = dateTemp.Format("%Y/%m/%d");
	m_parent->m_recSet->GetFieldValue("S_Hkd",m_S_Hkd);
	m_parent->m_recSet->GetFieldValue(0,m_S_ID);
	m_parent->m_recSet->GetFieldValue("S_Jb",m_S_Jb);
	m_parent->m_recSet->GetFieldValue("S_Jg",m_S_Jg);
	m_parent->m_recSet->GetFieldValue("S_Jkzk",m_S_Jkzk);
	m_parent->m_recSet->GetFieldValue("S_Jzxm",m_S_Jzxm);
	m_parent->m_recSet->GetFieldValue("S_Jtzz",m_S_Jzzz);
	m_parent->m_recSet->GetFieldValue("S_Lxdh",m_S_Lxdh);
	m_parent->m_recSet->GetFieldValue("S_Mz",m_S_Mz);
	m_parent->m_recSet->GetFieldValue("S_Sfyd",m_S_Sfyd);
	m_parent->m_recSet->GetFieldValue("S_Xb",m_S_Xb);
	m_parent->m_recSet->GetFieldValue("S_zt",m_S_Xjzt);
	m_parent->m_recSet->GetFieldValue("S_Ahtc",m_S_Tcah);
	m_parent->m_recSet->GetFieldValue("S_Name",m_S_Xm);
	m_parent->m_recSet->GetFieldValue("S_Xsly",m_S_Xsly);
	m_parent->m_recSet->GetFieldValue("S_Yb",m_S_Yb);
	m_parent->m_recSet->GetFieldValue("S_Zsqk",m_S_Zsqk);
	m_parent->m_recSet->GetFieldValue("S_Zzmm",m_S_Zzmm);
	m_parent->m_recSet->GetFieldValue("Z_Name",m_S_Zy);
	
	
}

void CDaCxXXDlg::OnBuA() 
{
	// TODO: Add your control notification handler code here
	m_parent->m_recSet->MoveFirst();
	if(m_parent->m_recSet->IsEOF())
	{
		this->m_Bu_Z.EnableWindow(false);
		this->m_Bu_Down.EnableWindow(false);
		m_parent->m_recSet->MoveLast();
	}
	if(m_parent->m_recSet->IsBOF())
	{
		this->m_Bu_A.EnableWindow(false);
		this->m_Bu_Up.EnableWindow(false);
		m_parent->m_recSet->MoveFirst();
	}
	this->UpdateData(true);
	ShowRow();
	ShowRowJ();
	this->UpdateData(false);
}

void CDaCxXXDlg::OnBuZ() 
{
	// TODO: Add your control notification handler code here
	m_parent->m_recSet->MoveLast();
	if(m_parent->m_recSet->IsEOF())
	{
		this->m_Bu_Z.EnableWindow(false);
		this->m_Bu_Down.EnableWindow(false);
		m_parent->m_recSet->MoveLast();
	}
	if(m_parent->m_recSet->IsBOF())
	{
		this->m_Bu_A.EnableWindow(false);
		this->m_Bu_Up.EnableWindow(false);
		m_parent->m_recSet->MoveFirst();
	}
	this->UpdateData(true);
	ShowRow();
	ShowRowJ();
	this->UpdateData(false);
	
}

void CDaCxXXDlg::ShowRowJ()
{
	//家庭成员
	CString sqlt;
	sqlt.Format("SELECT * FROM JtcyTable WHERE S_ID='%s'",m_S_ID);
	m_parent->m_recSetTemp->Open(sqlt.GetBuffer(100));
	m_S_JT.DeleteAllItems();
	int i=0;
	LV_ITEM lvitem;
	lvitem.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_STATE;
	lvitem.state = 0;      
	lvitem.stateMask = 0; 
	char temp1[50];
	CString temp;
	while(!m_parent->m_recSetTemp->IsEOF())
	{
		
		lvitem.iItem = i;
		lvitem.iSubItem = 0;
		lvitem.pszText =itoa(i, temp1, 10); 
		m_S_JT.InsertItem(&lvitem);
		
		m_parent->m_recSetTemp->GetFieldValue("J_Gx",temp);
		m_S_JT.SetItemText(i,0,temp);
		m_parent->m_recSetTemp->GetFieldValue("J_Name",temp);
		m_S_JT.SetItemText(i,1,temp);
		m_parent->m_recSetTemp->GetFieldValue("J_Nl",temp);
		m_S_JT.SetItemText(i,2,temp);
		m_parent->m_recSetTemp->GetFieldValue("J_Dw",temp);
		m_S_JT.SetItemText(i,3,temp);
		m_parent->m_recSetTemp->GetFieldValue("J_Dh",temp);	
		m_S_JT.SetItemText(i,4,temp);
		i++;
		m_parent->m_recSetTemp->MoveNext();
	}
	m_parent->m_recSetTemp->Close();
	
	//经历
	sqlt.Format("SELECT * FROM JlTable WHERE S_ID='%s'",m_S_ID);
	m_parent->m_recSetTemp->Open(sqlt.GetBuffer(100));
	m_S_JL.DeleteAllItems();
	i=0;
	COleDateTime dateTemp;
	while(!m_parent->m_recSetTemp->IsEOF())
	{
		
		lvitem.iItem = i;
		lvitem.iSubItem = 0;
		lvitem.pszText =itoa(i, temp1, 10); 
		m_S_JL.InsertItem(&lvitem);
		
		m_parent->m_recSetTemp->GetFieldValue("L_From",dateTemp);
		m_S_JL.SetItemText(i,0,dateTemp.Format("%Y/%m/%d"));
		m_parent->m_recSetTemp->GetFieldValue("L_To",dateTemp);
		m_S_JL.SetItemText(i,1,dateTemp.Format("%Y/%m/%d"));
		m_parent->m_recSetTemp->GetFieldValue("L_Xxm",temp);
		m_S_JL.SetItemText(i,2,temp);
		m_parent->m_recSetTemp->GetFieldValue("L_Zmr",temp);
		m_S_JL.SetItemText(i,3,temp);
	
		i++;
		m_parent->m_recSetTemp->MoveNext();
	}
	m_parent->m_recSetTemp->Close();
	
	//照片
	m_S_Zp.Invalidate(true);
	
	CADOFieldInfo fldInfo;
	
	
	m_parent->m_recSet->GetFieldInfo("S_Zp",&fldInfo);
	
	int nSize = (int)(fldInfo.m_lSize);
	
	if(nSize>0)
	{
		_variant_t	varBLOB;
		m_parent->m_recSet->GetFieldValue("S_Zp",varBLOB);
		
		if(varBLOB.vt == (VT_ARRAY | VT_UI1))
		{
			if(BYTE *pBuffer = new BYTE [nSize+1])		///重新申请必要的存储空间
			{	
				char *pBuf = NULL;
				SafeArrayAccessData(varBLOB.parray,(void **)&pBuf);
				memcpy(pBuffer,pBuf,nSize);				///复制数据到缓冲区m_pBMPBuffer
				SafeArrayUnaccessData (varBLOB.parray);
				//	int nSize = lDataSize;
				(m_Pic.LoadPictureData(pBuffer, nSize));
				
				delete [] pBuffer;
				pBuf=0;
				
				
				///生成BITMAP对象
				CDC *dc = m_S_Zp.GetDC();
				CRect  rect;
				m_S_Zp.GetClientRect(rect);
				m_Pic.UpdateSizeOnDC(dc); // Get Picture Dimentions In Pixels
				m_Pic.Show(dc, CRect(0,0,rect.Width(),rect.Height()));
			}
		}
	}
	else
	{
	}
}

⌨️ 快捷键说明

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