📄 dacxxxdlg.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 + -