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

📄 dbamaindlg.cpp

📁 库存管理系统 用来管理仓库的
💻 CPP
字号:
// DbaMainDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Stock.h"
#include "DbaMainDlg.h"
#include "Connection.h"
#include "DbaEditDlg.h"
#include "DBA.h"
#include "DbaUpdateDlg.h"
extern CConnection * gconn;
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CDbaMainDlg dialog


CDbaMainDlg::CDbaMainDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CDbaMainDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CDbaMainDlg)
	//}}AFX_DATA_INIT

}


void CDbaMainDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDbaMainDlg)
	DDX_Control(pDX, IDC_LIST1, m_Listctl);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDbaMainDlg, CDialog)
	//{{AFX_MSG_MAP(CDbaMainDlg)
	ON_BN_CLICKED(ID_ADD, OnAdd)
	ON_BN_CLICKED(ID_UPDATE, OnUpdate)
	ON_BN_CLICKED(ID_DEL, OnDel)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDbaMainDlg message handlers

BOOL CDbaMainDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	// TODO: Add extra initialization here
Refresh_data();




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

void CDbaMainDlg::OnAdd() 
{
	// TODO: Add your control notification handler code here
	CDbaEditDlg dlg;
	_RecordsetPtr rs=NULL;
	_variant_t var;
	if(dlg.DoModal()==IDOK)
	{	
		MessageBox("添加成功!");
		Refresh_data();
	}

}

void CDbaMainDlg::OnUpdate() 
{
	// TODO: Add your control notification handler code here
	int index=-1;
	if(m_Listctl.GetNextItem(index,LVNI_SELECTED)==-1)
	{
		AfxMessageBox("请选至少中一条记录!");
		return ;
	}
    index=m_Listctl.GetNextItem(-1,LVNI_SELECTED);
    CString strNo;
	strNo=m_Listctl.GetItemText(index,0);
	strNo.TrimLeft();
	strNo.TrimRight();
	CDBA temp;
	temp.m_UserName=strNo;
	CString sql="select * from Users where UserName='"+strNo+"'";
	  	_RecordsetPtr rs=gconn->Execute(sql);
     _variant_t var=rs->Fields->GetItem("Pwd")->Value;
	  temp.m_Pwd=(LPCSTR)_bstr_t(var);
	  temp.m_Pwd.TrimRight();
	 CDbaUpdateDlg dlg(temp);
	  dlg.DoModal();

}

void CDbaMainDlg::OnDel() 
{
	// TODO: Add your control notification handler code here
	int index=-1,preindex=-1;
	if(m_Listctl.GetNextItem(index,LVNI_SELECTED)==-1)
	{
		AfxMessageBox("请选至少中一条记录!");
		return ;
	}
	if (MessageBox("是否删除当前记录","请确定", MB_YESNO) == IDYES)
	{
	   while((index=m_Listctl.GetNextItem(preindex,LVNI_SELECTED))!=-1)
	   {	
		CString strNo;
		strNo=m_Listctl.GetItemText(index,0);
		strNo.TrimLeft();
		strNo.TrimRight();
		m_Listctl.DeleteItem(index);
		CString sql="delete from Users where UserName='"+strNo+"'";
		gconn->Execute(sql);	
	   }
	}


}

void CDbaMainDlg::Refresh_data()
{
	m_Listctl.DeleteAllItems();
	m_Listctl.InsertColumn(0,"用户名 ",LVCFMT_CENTER);
	CRect r;
	m_Listctl.GetWindowRect(&r);
    int wid=r.Width();
	m_Listctl.SetColumnWidth(0,wid);
	m_Listctl.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
		_RecordsetPtr rs=NULL;
	_variant_t var;

	try
	{	
		CString sql="select * from Users ;";
		rs=gconn->Execute(sql);
		int row=0;

        while(!rs->adoEOF)
		{		
			var=rs->Fields->GetItem("UserName")->Value;
			m_Listctl.InsertItem(row,(LPCSTR)_bstr_t(var));	
			rs->MoveNext();	
			row++;
		}
        
      UpdateData(FALSE);

	}
	catch(_com_error *e)
	{
		AfxMessageBox(e->ErrorMessage());		
	} 


}

⌨️ 快捷键说明

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