📄 detaildlg.cpp
字号:
// DetailDlg.cpp : implementation file
//
#include "stdafx.h"
#include "DutComputerManager.h"
#include "DetailDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDetailDlg dialog
CDetailDlg::CDetailDlg(CWnd* pParent /*=NULL*/)
: CDialog(CDetailDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CDetailDlg)
m_strComment = _T("");
m_strCpu = _T("");
m_strHarddisk = _T("");
m_strMem = _T("");
m_strMonitor = _T("");
m_strName = _T("");
m_strNetcard = _T("");
m_fPrice = 0.0f;
m_strSeriers = _T("");
m_strSource = _T("");
m_strUser = _T("");
m_strVideocard = _T("");
//}}AFX_DATA_INIT
m_bAddnew=FALSE;
m_pRecordSet=NULL;
}
void CDetailDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDetailDlg)
DDX_Control(pDX, IDC_EDIT_NETCARD, m_NetcardCtrl);
DDX_Control(pDX, IDC_EDIT_VIDEOCARD, m_VideocardCtrl);
DDX_Control(pDX, IDC_EDIT_MONITOR, m_MonitorCtrl);
DDX_Control(pDX, IDC_EDIT_MEM, m_MemCtrl);
DDX_Control(pDX, IDC_EDIT_HARDDISK, m_HarddiskCtrl);
DDX_Control(pDX, IDC_EDIT_CPU, m_CpuCtrl);
DDX_Control(pDX, IDC_COMBO_TYPE, m_typeCmb);
DDX_Control(pDX, IDC_COMBO_STATUS, m_statusCmb);
DDX_Control(pDX, IDC_COMBO_ROOM, m_roomCmb);
DDX_Control(pDX, IDC_COMBO_AREA, m_areaCmb);
DDX_Control(pDX, IDC_BUTTON_PRE, m_preBtn);
DDX_Control(pDX, IDC_BUTTON_NEXT, m_nextBtn);
DDX_Control(pDX, IDC_BUTTON_LAST, m_lastBtn);
DDX_Control(pDX, IDC_BUTTON_FIRST, m_firstBtn);
DDX_Control(pDX, IDC_BUTTON_EDIT, m_editBtn);
DDX_Control(pDX, IDC_BUTTON_DELETE, m_deleteBtn);
DDX_Control(pDX, IDC_BUTTON_ADDNEW, m_addnewBtn);
DDX_Text(pDX, IDC_EDIT_COMMENT, m_strComment);
DDX_Text(pDX, IDC_EDIT_CPU, m_strCpu);
DDX_Text(pDX, IDC_EDIT_HARDDISK, m_strHarddisk);
DDX_Text(pDX, IDC_EDIT_MEM, m_strMem);
DDX_Text(pDX, IDC_EDIT_MONITOR, m_strMonitor);
DDX_Text(pDX, IDC_EDIT_NAME, m_strName);
DDX_Text(pDX, IDC_EDIT_NETCARD, m_strNetcard);
DDX_Text(pDX, IDC_EDIT_PRICE, m_fPrice);
DDX_Text(pDX, IDC_EDIT_SERIERS, m_strSeriers);
DDX_Text(pDX, IDC_EDIT_SOURCE, m_strSource);
DDX_Text(pDX, IDC_EDIT_USER, m_strUser);
DDX_Text(pDX, IDC_EDIT_VIDEOCARD, m_strVideocard);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDetailDlg, CDialog)
//{{AFX_MSG_MAP(CDetailDlg)
ON_BN_CLICKED(IDC_BUTTON_ADDNEW, OnButtonAddnew)
ON_WM_CLOSE()
ON_CBN_SELCHANGE(IDC_COMBO_AREA, OnSelchangeComboArea)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDetailDlg message handlers
void CDetailDlg::OnButtonAddnew()
{
// TODO: Add your control notification handler code here
m_bAddnew=TRUE;
ChangeStatus(m_bAddnew);
}
BOOL CDetailDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
if(m_bAddnew==TRUE)
{
m_nextBtn.ShowWindow(FALSE);
m_preBtn.ShowWindow(FALSE);
m_lastBtn.ShowWindow(FALSE);
m_firstBtn.ShowWindow(FALSE);
m_editBtn.ShowWindow(FALSE);
m_deleteBtn.ShowWindow(FALSE);
m_addnewBtn.SetWindowText("确定");
SetWindowText("添加新记录");
}
m_pRecordSet=new CAdoRecordSet(theApp.m_pConnection);
//物品分类查询
m_pRecordSet->Open("select * from typedb");
if(m_pRecordSet!=NULL)
{
m_pRecordSet->MoveFirst();
while(!m_pRecordSet->IsEOF())
{
CString str="";
m_pRecordSet->GetCollect("type",str);
m_typeCmb.AddString(str);
m_pRecordSet->MoveNext();
}
m_typeCmb.SetCurSel(0);
m_pRecordSet->Close();
}
//物品状态查询
m_pRecordSet->Open("select * from status ");
if(m_pRecordSet!=NULL)
{
m_pRecordSet->MoveFirst();
while(!m_pRecordSet->IsEOF())
{
CString str="";
m_pRecordSet->GetCollect("status",str);
m_statusCmb.AddString(str);
m_pRecordSet->MoveNext();
}
m_statusCmb.SetCurSel(0);
m_pRecordSet->Close();
}
//物品地域查询
m_pRecordSet->Open("select * from locationdb");
if(m_pRecordSet!=NULL)
{
m_pRecordSet->MoveFirst();
_locationdb db;
while(!m_pRecordSet->IsEOF())
{
CString str="";
memset(&db,0,sizeof(_locationdb));
m_pRecordSet->GetCollect("id",db.id);
m_pRecordSet->GetCollect("type",db.type);
m_pRecordSet->GetCollect("parent",db.parentid);
m_pRecordSet->GetCollect("name",str);
strcpy(db.name,(LPCTSTR)str);
m_locationlist.AddTail(db);
m_pRecordSet->MoveNext();
}
m_pRecordSet->Close();
if(m_locationlist.GetCount()>0)
{
POSITION pos=m_locationlist.GetHeadPosition();
while(pos!=NULL)
{
_locationdb db=m_locationlist.GetNext(pos);
if(db.type==0)
{
m_areaCmb.AddString(db.name);
}
}
}
}
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDetailDlg::ChangeStatus(BOOL status)
{
if(status==TRUE)
{
m_nextBtn.ShowWindow(FALSE);
m_preBtn.ShowWindow(FALSE);
m_lastBtn.ShowWindow(FALSE);
m_firstBtn.ShowWindow(FALSE);
m_editBtn.ShowWindow(FALSE);
m_deleteBtn.ShowWindow(FALSE);
m_addnewBtn.SetWindowText("确定");
SetWindowText("添加新记录");
}
else
{
m_nextBtn.ShowWindow(TRUE);
m_preBtn.ShowWindow(TRUE);
m_lastBtn.ShowWindow(TRUE);
m_firstBtn.ShowWindow(TRUE);
m_editBtn.ShowWindow(TRUE);
m_deleteBtn.ShowWindow(TRUE);
m_addnewBtn.SetWindowText("添加");
}
}
void CDetailDlg::OnClose()
{
// TODO: Add your message handler code here and/or call default
if(m_pRecordSet!=NULL)
{
if(m_pRecordSet->IsOpen())
{
m_pRecordSet->Close();
delete m_pRecordSet;
m_pRecordSet=NULL;
}
}
if(m_locationlist.GetCount()>0)m_locationlist.RemoveAll();
CDialog::OnClose();
}
void CDetailDlg::OnSelchangeComboArea()
{
// TODO: Add your control notification handler code here
CString str;
m_areaCmb.GetWindowText(str);
if(m_locationlist.GetCount()>0)
{
POSITION pos=m_locationlist.GetHeadPosition();
while(pos!=NULL)
{
_locationdb db=m_locationlist.GetNext(pos);
if(db.type==0 && strcmp(db.name,(LPCTSTR)str))
{
m_areaCmb.AddString(db.name);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -