📄 searchdlg.cpp
字号:
// SearchDlg.cpp : implementation file
//
#include "stdafx.h"
#include "HealManage.h"
#include "SearchDlg.h"
#include "AddDialog.h"
#include "TiJSet.h"
#include "StuInfoSet.h"
#include "ModDlg.h"
#include "ViewDialog.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CSearchDlg dialog
CSearchDlg::CSearchDlg(CWnd* pParent /*=NULL*/)
: CDialog(CSearchDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CSearchDlg)
m_ksh = _T("");
m_xm = _T("");
m_xb = 0;
m_zylysl1 = _T("");
m_zylysl2 = _T("");
m_yylysl1 = _T("");
m_yylysl2 = _T("");
m_sj = FALSE;
m_ggn = FALSE;
m_xt = FALSE;
m_kq = FALSE;
m_eb = FALSE;
m_wk = FALSE;
m_nk = FALSE;
m_xj = FALSE;
m_sg1 = _T("");
m_sg2 = _T("");
m_tz1 = _T("");
m_tz2 = _T("");
m_ztl1 = _T("");
m_ztl2 = _T("");
m_ytl1 = _T("");
m_ytl2 = _T("");
//}}AFX_DATA_INIT
}
void CSearchDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSearchDlg)
DDX_Control(pDX, IDC_YTL1, m_cytl);
DDX_Control(pDX, IDC_ZTL1, m_cztl);
DDX_Control(pDX, IDC_TZ1, m_ctz);
DDX_Control(pDX, IDC_SG1, m_csg);
DDX_Control(pDX, IDC_YYLYSL1, m_cyylysl);
DDX_Control(pDX, IDC_ZYLYSL1, m_czylysl);
DDX_Control(pDX, IDC_XM, m_cxm);
DDX_Control(pDX, IDC_KSH, m_cksh);
DDX_Control(pDX, IDC_SEARCHLIST, m_csearch);
DDX_Text(pDX, IDC_KSH, m_ksh);
DDX_Text(pDX, IDC_XM, m_xm);
DDX_Radio(pDX, IDC_Boy_RADIO, m_xb);
DDX_Text(pDX, IDC_ZYLYSL1, m_zylysl1);
DDX_Text(pDX, IDC_ZYLYSL2, m_zylysl2);
DDX_Text(pDX, IDC_YYLYSL1, m_yylysl1);
DDX_Text(pDX, IDC_YYLYSL2, m_yylysl2);
DDX_Check(pDX, IDC_SJ, m_sj);
DDX_Check(pDX, IDC_GGN, m_ggn);
DDX_Check(pDX, IDC_XT, m_xt);
DDX_Check(pDX, IDC_KQ, m_kq);
DDX_Check(pDX, IDC_EB, m_eb);
DDX_Check(pDX, IDC_WK, m_wk);
DDX_Check(pDX, IDC_NK, m_nk);
DDX_Check(pDX, IDC_XJ, m_xj);
DDX_Text(pDX, IDC_SG1, m_sg1);
DDX_Text(pDX, IDC_SG2, m_sg2);
DDX_Text(pDX, IDC_TZ1, m_tz1);
DDX_Text(pDX, IDC_TZ2, m_tz2);
DDX_Text(pDX, IDC_ZTL1, m_ztl1);
DDX_Text(pDX, IDC_ZTL2, m_ztl2);
DDX_Text(pDX, IDC_YTL1, m_ytl1);
DDX_Text(pDX, IDC_YTL2, m_ytl2);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSearchDlg, CDialog)
//{{AFX_MSG_MAP(CSearchDlg)
ON_BN_CLICKED(IDC_SEARCHALL, OnSearchall)
ON_BN_CLICKED(IDC_SKSH, OnSksh)
ON_BN_CLICKED(IDC_SXM, OnSxm)
ON_BN_CLICKED(IDC_DELETE, OnDelete)
ON_BN_CLICKED(IDC_MODIFY, OnModify)
ON_BN_CLICKED(IDC_VIEW, OnView)
ON_BN_CLICKED(IDC_ADD, OnAdd)
ON_BN_CLICKED(IDC_GJSEARCH, OnGjsearch)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSearchDlg message handlers
BOOL CSearchDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
UpdateData(FALSE);
m_csearch.InsertColumn(0,"考生号");
m_csearch.InsertColumn(1,"姓名");
m_csearch.InsertColumn(2,"性别");
m_csearch.InsertColumn(3,"毕业学校名称");
m_csearch.InsertColumn(4,"体检序号");
m_csearch.InsertColumn(5,"既往病史");
m_csearch.InsertColumn(6,"体检结论");
m_csearch.SetColumnWidth(0,60);
m_csearch.SetColumnWidth(1,60);
m_csearch.SetColumnWidth(2,60);
m_csearch.SetColumnWidth(3,100);
m_csearch.SetColumnWidth(4,60);
m_csearch.SetColumnWidth(5,500);
m_csearch.SetColumnWidth(6,500);
m_csearch.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
CString m_strSQL;
CTiJSet m_recordset;
int i=0;
m_strSQL="select * from tjk";
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,m_strSQL))
{
MessageBox("打开数据库失败","连接失败",MB_OK);
return FALSE;
}
while(!m_recordset.IsEOF())
{
m_csearch.InsertItem(i,m_recordset.m_ksh);
m_csearch.SetItemText(i,1,m_recordset.m_xm);
m_csearch.SetItemText(i,2,m_recordset.m_xb);
m_csearch.SetItemText(i,3,m_recordset.m_byxxmc);
m_csearch.SetItemText(i,4,m_recordset.m_tjxh);
m_csearch.SetItemText(i,5,m_recordset.m_jwbs);
m_csearch.SetItemText(i,6,m_recordset.m_bz);
i++;
m_recordset.MoveNext();
}
m_recordset.Close();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CSearchDlg::RefreshData(CString m_strSQL)
{
m_csearch.DeleteAllItems();
m_csearch.SetRedraw(FALSE);
UpdateData(TRUE);
CTiJSet m_recordset;
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,m_strSQL))
{
MessageBox("打开数据库失败!","数据库错误",MB_OK);
return ;
}
int i=0;
while(!m_recordset.IsEOF())
{
m_csearch.InsertItem(i,m_recordset.m_ksh);
m_csearch.SetItemText(i,1,m_recordset.m_xm);
m_csearch.SetItemText(i,2,m_recordset.m_xb);
m_csearch.SetItemText(i,3,m_recordset.m_byxxmc);
m_csearch.SetItemText(i,4,m_recordset.m_tjxh);
m_csearch.SetItemText(i,5,m_recordset.m_jwbs);
m_csearch.SetItemText(i,6,m_recordset.m_bz);
i++;
m_recordset.MoveNext();
}
m_recordset.Close();
m_csearch.SetRedraw(TRUE);
}
void CSearchDlg::OnSearchall()
{
// TODO: Add your control notification handler code here
CString m_strSQL="select * from tjk";
RefreshData(m_strSQL);
UpdateData(FALSE);
}
void CSearchDlg::OnSksh()
{
// TODO: Add your control notification handler code here
CString m_strSQL;
CTiJSet m_recordset;
UpdateData(TRUE);
if(m_ksh.IsEmpty())
{
AfxMessageBox("请输入要查询的考生号!");
m_cksh.SetFocus();
return;
}
m_strSQL.Format("select * from tjk where ksh='%s'",m_ksh);
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,m_strSQL))
{
MessageBox("打开数据库失败","连接失败",MB_OK);
return;
}
if(m_recordset.GetRecordCount()==0)
{
AfxMessageBox("该考生没有参加体检,请重新输入考生号!");
m_cksh.SetFocus();
m_ksh="";
UpdateData(FALSE);
return;
}
RefreshData(m_strSQL);
UpdateData(FALSE);
}
void CSearchDlg::OnSxm()
{
// TODO: Add your control notification handler code here
CString m_strSQL;
CTiJSet m_recordset;
UpdateData(TRUE);
if(m_xm.IsEmpty())
{
AfxMessageBox("请输入要查询的考生的姓名!");
m_cxm.SetFocus();
return;
}
m_strSQL.Format("select * from tjk where xm='%s'",m_xm);
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,m_strSQL))
{
MessageBox("打开数据库失败","连接失败",MB_OK);
return;
}
if(m_recordset.GetRecordCount()==0)
{
AfxMessageBox("该考生没有参加体检,请重新输入考生号!");
m_cksh.SetFocus();
m_ksh="";
UpdateData(FALSE);
return;
}
RefreshData(m_strSQL);
UpdateData(FALSE);
}
void CSearchDlg::OnDelete()
{
// TODO: Add your control notification handler code here
CString m_KSH;
CString m_strSQL;
CTiJSet m_recordset;
int i=m_csearch.GetSelectionMark();
if(i<0)
{
MessageBox("请选择一个要删除的记录!");
return;
}
m_KSH=m_csearch.GetItemText(i,0);
if (MessageBox("是否删除该记录?","请确认", MB_YESNO) == IDYES)
{
m_strSQL.Format("select * from tjk where ksh='%s'",m_KSH);
if(!m_recordset.Open(AFX_DB_USE_DEFAULT_TYPE,m_strSQL))
{
MessageBox("打开数据库失败","连接失败",MB_OK);
return;
}
m_recordset.Delete();
m_recordset.Close();
AfxMessageBox("成功删除此条记录!");
m_strSQL="select * from tjk";
RefreshData(m_strSQL);
UpdateData(FALSE);
}
}
void CSearchDlg::OnModify()
{
// TODO: Add your control notification handler code here
CString m_KSH;
CString m_strSQL;
CTiJSet m_recordset;
CString m_strBirth;
CStuInfoSet m_stuSet;
int i=m_csearch.GetSelectionMark();
if(i<0)
{
MessageBox("请选择一个要修改的记录!");
return;
}
m_KSH=m_csearch.GetItemText(i,0);
CDialog::OnOK();
m_strSQL.Format("select * from bjk where ksh='%s'",m_KSH);
if(!m_stuSet.Open(AFX_DB_USE_DEFAULT_TYPE,m_strSQL))
{
MessageBox("打开数据库失败","连接失败",MB_OK);
return;
}
CModDlg dlg;
dlg.m_tjxh=m_recordset.m_tjxh;
dlg.m_ksh=m_stuSet.m_ksh;
dlg.m_xm=m_stuSet.m_xm;
dlg.m_xb=m_stuSet.m_xbdm;
m_strBirth.Format("%d-%d-%d",m_stuSet.m_csrq.GetYear(),m_stuSet.m_csrq.GetMonth(),m_stuSet.m_csrq.GetDay());
dlg.m_cerq=m_strBirth;
dlg.m_mz=m_stuSet.m_mzdm;
dlg.m_sfzh=m_stuSet.m_sfzh;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -