📄 classmanadlg.cpp
字号:
// ClassManaDlg.cpp : implementation file
//
#include "stdafx.h"
#include "QGZX_InfoPlat.h"
#include "ClassManaDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CClassManaDlg dialog
CClassManaDlg::CClassManaDlg(CWnd* pParent /*=NULL*/)
: CDialog(CClassManaDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CClassManaDlg)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
m_ds = new CData();
m_ds->InitData();
}
void CClassManaDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CClassManaDlg)
DDX_Control(pDX, IDC_LIST_CLASS, m_classView);
DDX_Control(pDX, IDC_COMBO_MANAGER, m_comboManager);
DDX_Control(pDX, IDC_MONTHCALENDAR, m_monthCalendar);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CClassManaDlg, CDialog)
//{{AFX_MSG_MAP(CClassManaDlg)
ON_CBN_SETFOCUS(IDC_COMBO_DATE, OnSetfocusComboDate)
ON_CBN_KILLFOCUS(IDC_COMBO_DATE, OnKillfocusComboDate)
ON_NOTIFY(MCN_SELECT, IDC_MONTHCALENDAR, OnSelectMonthcalendar)
ON_CBN_DROPDOWN(IDC_COMBO_DATE, OnDropdownComboDate)
ON_BN_CLICKED(IDC_CHECK_ALTERNUM, OnCheckAlternum)
ON_BN_CLICKED(ID_DEL_CLASS, OnDelClass)
ON_BN_CLICKED(ID_ALTER_CLASS, OnAlterClass)
ON_WM_CTLCOLOR()
ON_NOTIFY(NM_CLICK, IDC_LIST_CLASS, OnClickListClass)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CClassManaDlg message handlers
void CClassManaDlg::OnOK()
{
// TODO: Add extra validation here
CString str_classID, str_className, str_CreateDate, str_ManagerName, str_classInfo;
int nNum = 0;
CString str_nNum;
CString str_Insert;
GetDlgItemText(IDC_EDIT_CLASSID, str_classID);
GetDlgItemText(IDC_EDIT_CLASSNAME, str_className);
GetDlgItemText(IDC_COMBO_DATE, str_CreateDate);
GetDlgItemText(IDC_COMBO_MANAGER, str_ManagerName);
GetDlgItemText(IDC_EDIT_CLASSINFO, str_classInfo);
GetDlgItemText(IDC_EDIT_CLASSNUM, str_nNum);
// str_nNum.Format("%d",nNum);
if(str_classID == "" || str_className == "" || str_CreateDate == "" ||
str_ManagerName == "" || str_classInfo == "")
{
MessageBox("错误:请输入完整的信息","输入信息不完整",MB_ICONERROR | MB_OK);
return;
}
// str_Insert.Format("Insert into _tClass(ClassID, ClassName, ClassNum, ClassInfo,CreateDate, ManagerName) values('%s', '%s', %s, '%s', '%s','%s')",str_classID, str_className, 10, str_classInfo, str_CreateDate, str_ManagerName);
str_Insert.Format("Insert into _tClass(ClassNum ,ClassID, ClassName ,CreateDate, ClassInfo, ManagerName) values(%s, '%s', '%s' ,'%s' ,'%s', '%s')", str_nNum, str_classID, str_className ,str_CreateDate, str_classInfo, str_ManagerName);
m_ds->ExecuteOther(str_Insert);
// m_ds->ExecuteSQL("Select * From _tClass");
// str_Insert.Format("Insert into _tClass(ClassID, ClassName, ClassNum, ClassInfo,
// CreateDate, ManagerName) values('%s', '%s', 0, '%s', '%s', '%s')",
// str_classID, str_className, str_classInfo, str_CreateDate, str_ManagerName);
RefreshListView(NULL);
return;
// CDialog::OnOK();
}
void CClassManaDlg::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
}
BOOL CClassManaDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
CString str_tmp1;
CString str_date;
int nRecordCount = 0;
CTime time; //设置初始化日期
time=::CTime::GetCurrentTime();
str_date = time.Format("20%y-%m-%d");
// str_date = time.Format("%H:%M:%S"); //获取时间
SetDlgItemText(IDC_COMBO_DATE,str_date);
SetDlgItemText(IDC_EDIT_CLASSNUM, "0"); //设置默认类数为0
SetDlgItemText(IDC_EDIT_CLASSINFO, "<无>");
((CButton*)GetDlgItem(ID_DEL_CLASS))->EnableWindow(FALSE);
((CButton*)GetDlgItem(ID_ALTER_CLASS))->EnableWindow(FALSE);
m_comboManager.InsertString(0,this->m_strManagerName);
m_ds->ExecuteSQL("Select * From _tSysManager");
nRecordCount = m_ds->GetRecordCount();
for(int i = 1; i <= nRecordCount; i++) //i从1计数,前面已经插入一项
{
str_tmp1 = m_ds->GetAsString("ManagerName");
m_comboManager.InsertString(i, str_tmp1);
m_ds->MoveNext();
}
m_comboManager.SetCurSel(0);
//**********************初始化列表视图*********************
m_classView.SetExtendedStyle(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
// m_classView.SetBkColor(RGB(250,250,0));
// m_classView.SetTextBkColor(RGB(255,0,0));
m_classView.InsertColumn(0,"分类编号",LVCFMT_LEFT,80);
m_classView.InsertColumn(1,"分类名称",LVCFMT_LEFT,120);
m_classView.InsertColumn(2,"分类商品数量",LVCFMT_LEFT,90);
m_classView.InsertColumn(3,"创建日期",LVCFMT_LEFT,100);
m_classView.InsertColumn(4,"操作员",LVCFMT_LEFT,100);
m_classView.InsertColumn(5,"分类信息",LVCFMT_LEFT,150);
CString str_ClassID;
m_ds->ExecuteSQL("Select * From _tClass");
nRecordCount = m_ds->GetRecordCount();
for(i = 0; i < nRecordCount; i++)
{
m_classView.InsertItem(i, "");
m_classView.SetItemText(i, 0 , m_ds->GetAsString("ClassID"));
m_classView.SetItemText(i, 1 , m_ds->GetAsString("ClassName"));
m_classView.SetItemText(i, 2 , m_ds->GetAsString("ClassNum"));
m_classView.SetItemText(i, 3 , m_ds->GetAsString("CreateDate"));
m_classView.SetItemText(i, 4 , m_ds->GetAsString("ManagerName"));
m_classView.SetItemText(i, 5 , m_ds->GetAsString("ClassInfo"));
m_ds->MoveNext();
}
// CFont class_font;
// class_font.CreatePointFont(150,_T("楷体"));
// m_classView.SetFont(&class_font);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CClassManaDlg::OnSetfocusComboDate()
{
// TODO: Add your control notification handler code here
m_monthCalendar.ShowWindow(SW_SHOW);
}
void CClassManaDlg::OnKillfocusComboDate()
{
// TODO: Add your control notification handler code here
m_monthCalendar.ShowWindow(SW_HIDE);
}
void CClassManaDlg::OnSelectMonthcalendar(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
COleDateTime m_dSelRq;
m_dSelRq=COleDateTime(((NMSELCHANGE*)pNMHDR)->stSelStart);
CString str_tmp1;
str_tmp1.Format("%d-%d-%d",m_dSelRq.GetYear(),m_dSelRq.GetMonth(),
m_dSelRq.GetDay());
SetDlgItemText(IDC_COMBO_DATE,str_tmp1);
m_monthCalendar.ShowWindow(SW_HIDE);
*pResult = 0;
}
void CClassManaDlg::OnDropdownComboDate()
{
// TODO: Add your control notification handler code here
m_monthCalendar.ShowWindow(SW_SHOW);
}
void CClassManaDlg::OnCheckAlternum()
{
// TODO: Add your control notification handler code here
if(((CButton*)GetDlgItem(IDC_CHECK_ALTERNUM))->GetCheck() == BST_CHECKED)
{
((CEdit*)GetDlgItem(IDC_EDIT_CLASSNUM))->EnableWindow(TRUE);
}
else
{
((CEdit*)GetDlgItem(IDC_EDIT_CLASSNUM))->EnableWindow(FALSE);
}
}
void CClassManaDlg::OnDelClass()
{
// TODO: Add your control notification handler code here
int nCurSele = 0;
CString strClassID;
CString strSQL;
nCurSele = m_classView.GetSelectionMark();
strClassID = m_classView.GetItemText(nCurSele, 0);
if(IDOK != MessageBox("确认删除[" + strClassID +"]吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION|MB_DEFBUTTON2))
return;
// m_classView.GetItemText(nCurSele, 0, strClassID.GetBuffer(0), 10);
// ::AfxMessageBox(strClassID);
m_classView.SetFocus();
strSQL.Format("Delete From _tClass Where ClassID = '%s'", strClassID);
// ::AfxMessageBox(strSQL);
m_ds->ExecuteOther(strSQL);
RefreshListView(NULL);
MessageBox("成功删除[" + strClassID + "]" ,"系统提示",MB_ICONINFORMATION | MB_OK);
/*
CString str_tmp1;
str_tmp1.Format("%d",m_classView.GetSelectionMark());
::AfxMessageBox(str_tmp1);
m_classView.SetFocus();
m_classView.SetItemState(1, LVIS_SELECTED, LVIS_SELECTED);
*/
// m_classView.EnsureVisible(1, false);
// m_classView.SetItemState(1, LVIS_SELECTED, LVIS_SELECTED);
// m_classView.SetItemState(1,NULL);
}
void CClassManaDlg::OnAlterClass()
{
// TODO: Add your control notification handler code here
int nCurSele = 0;
CString strClassID, strClassName, strNum, strDate, strManager, strInfo;
CString strSQL;
nCurSele = m_classView.GetSelectionMark();
strClassID = m_classView.GetItemText(nCurSele, 0);
strClassName = m_classView.GetItemText(nCurSele, 1);
strNum = m_classView.GetItemText(nCurSele, 2);
strDate = m_classView.GetItemText(nCurSele, 3);
strManager = m_classView.GetItemText(nCurSele, 4);
strInfo = m_classView.GetItemText(nCurSele, 5);
SetDlgItemText(IDC_EDIT_CLASSID, strClassID);
SetDlgItemText(IDC_EDIT_CLASSNAME, strClassName);
SetDlgItemText(IDC_EDIT_CLASSNUM, strNum);
SetDlgItemText(IDC_COMBO_DATE, strDate);
SetDlgItemText(IDC_COMBO_MANAGER, strManager);
SetDlgItemText(IDC_EDIT_CLASSINFO, strInfo);
m_classView.SetFocus();
}
BOOL CClassManaDlg::RefreshListView(CListCtrl *listview)
{
int nRecordCount = 0;
m_classView.DeleteAllItems();
m_ds->ExecuteSQL("Select * From _tClass");
nRecordCount = m_ds->GetRecordCount();
for(int i = 0; i < nRecordCount; i++)
{
m_classView.InsertItem(i, "");
m_classView.SetItemText(i, 0 , m_ds->GetAsString("ClassID"));
m_classView.SetItemText(i, 1 , m_ds->GetAsString("ClassName"));
m_classView.SetItemText(i, 2 , m_ds->GetAsString("ClassNum"));
m_classView.SetItemText(i, 3 , m_ds->GetAsString("CreateDate"));
m_classView.SetItemText(i, 4 , m_ds->GetAsString("ManagerName"));
m_classView.SetItemText(i, 5 , m_ds->GetAsString("ClassInfo"));
m_ds->MoveNext();
}
return TRUE;
}
HBRUSH CClassManaDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
// TODO: Return a different brush if the default is not desired
return hbr;
}
void CClassManaDlg::OnClickListClass(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
((CButton*)GetDlgItem(ID_DEL_CLASS))->EnableWindow(TRUE);
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -