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

📄 deletedlg.cpp

📁 银行支局ip管理系统
💻 CPP
字号:
// DeleteDlg.cpp : implementation file
//

#include "stdafx.h"
#include "BranchManager.h"
#include "DeleteDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// CDeleteDlg dialog


CDeleteDlg::CDeleteDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CDeleteDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDeleteDlg)
	m_DeleteStatus = _T("");
	m_bRecordWereDelete=FALSE;
	m_DeleteID1 = _T("");
	//}}AFX_DATA_INIT
}


void CDeleteDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDeleteDlg)
	DDX_Control(pDX, IDC_LIST1, m_DeleteListCtrl);
	DDX_Text(pDX, IDC_DELETESTATUS, m_DeleteStatus);
	DDX_Text(pDX, IDC_EDIT2, m_DeleteID1);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDeleteDlg, CDialog)
	//{{AFX_MSG_MAP(CDeleteDlg)
	ON_NOTIFY(LVN_COLUMNCLICK, IDC_LIST1, OnColumnclickList1)
	ON_BN_CLICKED(IDC_REFRESH, OnRefresh)
	ON_BN_CLICKED(IDC_BUTTON1, OnDeleteID)
	ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDeleteDlg message handlers



void CDeleteDlg::OnOK() 
{
	CString strRecordQuery;
	int nItemIndex=-1;
	if((m_DeleteListCtrl.GetNextItem(-1,LVNI_SELECTED))!=-1)
	{
		if(AfxMessageBox("确信要删除这些记录吗?(Y/N)",MB_OKCANCEL,0)==IDCANCEL)
			return;
		try
		{
			if(!m_pBranchManagerSet.IsOpen())
				m_pBranchManagerSet.Open();
			while((nItemIndex=m_DeleteListCtrl.GetNextItem(nItemIndex,LVNI_SELECTED))!=-1)
			{
				strRecordQuery=CString(_T("ID = "))+"'"+
					CString(m_DeleteListCtrl.GetItemText(nItemIndex,0))+"'";
				if(m_pBranchManagerSet.FindFirst(strRecordQuery))
				{
					m_pBranchManagerSet.Delete();
					m_pBranchManagerSet.MoveFirst();
					m_bRecordWereDelete=TRUE;
					m_DeleteStatus="删除记录成功";
				}
				else
					m_DeleteStatus="数据库中没有发现该记录";
			}
			m_pBranchManagerSet.Close();
		}
	    catch ( CDaoException* e ) 
		{ // catch database exceptions
			char szBuffer [ 256 ];
			CString strExceptDesc =
			CString ( "JET Database Engine Error:\n\n Error Code: " ) +
			CString ( ltoa ( e -> m_pErrorInfo -> m_lErrorCode, szBuffer, 10 ) ) +
			CString ( "\nDescription: " ) +
			CString ( e -> m_pErrorInfo -> m_strDescription );
			AfxMessageBox ( strExceptDesc, MB_ICONEXCLAMATION );
			m_pBranchManagerSet.Close ();
			return;
		}

	}
	else
		m_DeleteStatus="没有选中项目";
	if(m_bRecordWereDelete==TRUE)
		LoadList();
	UpdateData(FALSE);
}

BOOL CDeleteDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
	CenterWindow();
	m_SmallList.Create(16,16,FALSE,2,0);
	m_LargeList.Create(32,32,FALSE,2,0);
	m_SmallList.Add(AfxGetApp()->LoadIcon(IDI_ICON2));
	m_LargeList.Add(AfxGetApp()->LoadIcon(IDI_ICON2));
	m_DeleteListCtrl.SetImageList(&m_LargeList,LVSIL_NORMAL);
	m_DeleteListCtrl.SetImageList(&m_SmallList,LVSIL_SMALL);

	m_DeleteListCtrl.InsertColumn(0,"ID",LVCFMT_CENTER,74);
	m_DeleteListCtrl.InsertColumn(1,"Name",LVCFMT_CENTER,80);
	m_DeleteListCtrl.InsertColumn(2,"Address",LVCFMT_CENTER,100);
	m_DeleteListCtrl.InsertColumn(3,"Tel",LVCFMT_CENTER,70);
	m_DeleteListCtrl.InsertColumn(4,"HostIp",LVCFMT_CENTER,100);
	m_DeleteListCtrl.InsertColumn(5,"RouterIp",LVCFMT_CENTER,100);
	m_DeleteListCtrl.InsertColumn(6,"ATMIp",LVCFMT_CENTER,100);
	//ShowWindow(SW_SHOW);

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

void CDeleteDlg::LoadList()
{
	//char szBuffer[256];
	m_DeleteListCtrl.DeleteAllItems();
	try
	{
		if(!m_pBranchManagerSet.IsOpen())
			m_pBranchManagerSet.Open();
		for(int nListEntry=0;!m_pBranchManagerSet.IsEOF();nListEntry++)
		{
			m_DeleteListCtrl.InsertItem(nListEntry,LPCTSTR(m_pBranchManagerSet.m_ID),
				0);
			m_DeleteListCtrl.SetItemText(nListEntry,1,LPCTSTR(m_pBranchManagerSet.m_Name));
			m_DeleteListCtrl.SetItemText(nListEntry,2,LPCTSTR(m_pBranchManagerSet.m_Address));
			m_DeleteListCtrl.SetItemText(nListEntry,3,LPCTSTR(m_pBranchManagerSet.m_Tel));
			m_DeleteListCtrl.SetItemText(nListEntry,4,LPCTSTR(m_pBranchManagerSet.m_HostIp));
			m_DeleteListCtrl.SetItemText(nListEntry,5,LPCTSTR(m_pBranchManagerSet.m_RouterIp));
			m_DeleteListCtrl.SetItemText(nListEntry,6,LPCTSTR(m_pBranchManagerSet.m_AtmIp));
			m_pBranchManagerSet.MoveNext();
		}
		m_pBranchManagerSet.Close();
	}	catch(CDaoException* e)
	{
		char szBuffer [ 256 ];
		CString strExceptDesc =
			CString ( "JET Database Engine Error:\n\n Error Code: " ) +
			CString ( ltoa ( e -> m_pErrorInfo -> m_lErrorCode, szBuffer, 10 ) ) +
			CString ( "\nDescription: " ) +
			CString ( e -> m_pErrorInfo -> m_strDescription );
		AfxMessageBox ( strExceptDesc, MB_ICONEXCLAMATION );
		m_pBranchManagerSet.Close ();
		return;

	}
	return;

}

void CDeleteDlg::OnColumnclickList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
	switch(pNMListView->iSubItem)
	{
	case 0:
		LoadSortList(CString("[ID]"));
		break;
	case 1:
		LoadSortList(CString("[Name]"));
		break;
	case 2:
		LoadSortList(CString("[Address]"));
		break;
	case 3:
		LoadSortList(CString("[Tel]"));
		break;
	case 4:
		LoadSortList(CString("[HostIp]"));
		break;
	case 5:
		LoadSortList(CString("[RouterIp]"));
		break;
	case 6:
		LoadSortList(CString("[ATMIp]"));
		break;
	}
	*pResult = 0;
}

void CDeleteDlg::LoadSortList(CString &strSortBy)
{
	m_DeleteListCtrl.DeleteAllItems();
	m_pBranchManagerSet.m_strSort=strSortBy;
	LoadList();
	SetDlgItemText(IDC_DELETESTATUS,"");
	return;
}



void CDeleteDlg::OnRefresh() 
{
	LoadList();
}

void CDeleteDlg::OnDeleteID() 
{
	UpdateData(TRUE);
	if(!m_pBranchManagerSet.IsOpen())
		m_pBranchManagerSet.Open();
	CString str;
	if(m_DeleteID1=="")
		return;
	else
	{
		try
		{
			str=CString(_T("ID = "))+"'"+m_DeleteID1+"'";
			if(!m_pBranchManagerSet.FindFirst(str))
			{
				m_DeleteStatus="数据库中没有发现该记录";
				UpdateData(FALSE);
			}
			else
			{
				m_pBranchManagerSet.Delete();
				m_pBranchManagerSet.MoveFirst();
				LoadList();
				m_pBranchManagerSet.Close();
				m_DeleteStatus="删除记录成功";
				UpdateData(FALSE);
			}
		}
		catch(CDaoException* e)
		{
			char szBuffer [ 256 ];
			CString strExceptDesc =
				CString ( "JET Database Engine Error:\n\n Error Code: " ) +
				CString ( ltoa ( e -> m_pErrorInfo -> m_lErrorCode, szBuffer, 10 ) ) +
				CString ( "\nDescription: " ) +
				CString ( e -> m_pErrorInfo -> m_strDescription );
			AfxMessageBox ( strExceptDesc, MB_ICONEXCLAMATION );
			m_pBranchManagerSet.Close ();
			return;
		}
		return;
	}
	
}



void CDeleteDlg::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult) 
{
	//CString pszString;
	//int nSelected=m_DeleteListCtrl.GetNextItem(-1,LVNI_SELECTED);
	//if(nSelected=-1)
	//	return;
	//else
	//{
	//	pszString=CString(_T("ID = "))+"'"+
	//		CString(m_DeleteListCtrl.GetItemText(nSelected,0))+"'";
	//	if(!m_pBranchManagerSet.IsOpen())
	//		m_pBranchManagerSet.Open();
	//	m_pBranchManagerSet.FindFirst(pszString);
	//	m_pBranchManagerSet.Delete();
	//	LoadList();
	//	m_pBranchManagerSet.Close();
	//	m_DeleteStatus="删除记录成功";
	//	UpdateData(FALSE);
	//}
	
	OnOK();
	*pResult = 0;
}

⌨️ 快捷键说明

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